GitHub에 기존 소스 코드 추가 정보
Git에서 추적하거나 VCS(버전 제어 시스템)에서 추적하지 않는 컴퓨터에 로컬로 저장된 소스 코드가 있는 경우 터미널에 명령을 입력하여 GitHub에 코드를 추가할 수 있습니다. Git 명령을 직접 입력하거나 GitHub CLI를 사용하여 이 작업을 수행할 수 있습니다.
GitHub CLI는 컴퓨터의 명령줄에서 GitHub를 사용하기 위한 오픈 소스 도구입니다. GitHub CLI는 명령줄을 사용하여 GitHub에 기존 프로젝트를 추가하는 프로세스를 간소화할 수 있습니다. GitHub CLI에 대한 자세한 내용은 "GitHub CLI 정보.
참고: 포인트 앤 클릭 사용자 인터페이스에 가장 익숙한 경우 GitHub Desktop를 사용하여 프로젝트를 추가하는 것이 좋습니다. 자세한 내용은 "로컬 컴퓨터에서 GitHub Desktop으로 리포지토리 추가"을 참조하세요.
Mercurial, Subversion 또는 Team Foundation 버전 제어 같은 다른 VCS에서 소스 코드를 추적하는 경우 프로젝트를 GitHub에 추가하려면 먼저 리포지토리를 Git으로 변환해야 합니다.
- "Subversion 리포지토리 가져오기"
- "Importing a Mercurial repository"
- "Importing a Team Foundation Version Control repository"
경고: 원격 리포지토리에 절대 중요한 정보를 git add
, commit
또는 push
하지 마세요. 중요한 정보에는 다음이 포함될 수 있지만 이에 국한되지 않습니다.
- 암호
- SSH 키
- AWS 액세스 키
- API 키
- 신용 카드 번호
- PIN 번호
자세한 내용은 "리포지토리에서 중요한 데이터 제거"을 참조하세요.
Git 리포지토리 초기화
로컬로 호스트된 코드가 VCS에서 추적되지 않는 경우 첫 번째 단계는 Git 리포지토리를 초기화하는 것입니다. Git에서 프로젝트를 이미 추적한 경우 "명령줄을 사용하여 Git 리포지토리 가져오기"로 건너뜁니다.
-
Terminal(터미널)Terminal(터미널)Git Bash를 엽니다.
-
프로젝트의 루트 디렉터리로 이동합니다.
-
로컬 디렉터리를 Git 리포지토리로 초기화합니다. 기본적으로 초기 분기를
main
라고 합니다.Git 2.28.0 이상 버전을 사용하는 경우 기본 분기의 이름을
-b
로 설정할 수 있습니다.git init -b main
Git 2.27.1 이하 버전을 사용하는 경우 기본 분기의 이름을
git symbolic-ref
으로 설정할 수 있습니다.git init && git symbolic-ref HEAD refs/heads/main
-
새 로컬 리포지토리에서 파일을 추가합니다. 그러면 파일이 첫 번째 커밋을 위해 스테이징됩니다.
$ git add . # Adds the files in the local repository and stages them for commit. 파일의 스테이징을 해제하려면 ‘git reset HEAD YOUR-FILE’을 사용합니다.
-
로컬 리포지토리에서 스테이징한 파일을 커밋합니다.
$ git commit -m "First commit" # Commits the tracked changes and prepares them to be pushed to a remote repository. 이 커밋을 제거하고 파일을 수정하려면 ‘git reset --soft HEAD~1’을 사용하여 파일을 다시 커밋하고 추가합니다.
명령줄을 사용하여 Git 리포지토리 가져오기
Git 리포지토리를 초기화한 후에는 GitHub CLI 또는 Git을 사용하여 리포지토리를 GitHub에 푸시할 수 있습니다.
GitHub CLI을(를) 사용하여 GitHub에 로컬 리포지토리 추가
-
GitHub에서 프로젝트의 리포지토리를 만들려면
gh repo create
하위 명령을 사용합니다. 메시지가 표시되면 GitHub에 기존 로컬 리포지토리 푸시를 선택하고 원하는 리포지토리 이름을 입력합니다. 프로젝트가 사용자 계정 대신 조직에 속하도록 하려면organization-name/project-name
을 사용하여 조직 이름과 프로젝트 이름을 지정합니다. -
대화형 프롬프트의 안내를 따릅니다. 원격을 추가하고 리포지토리를 푸시하려면 원격을 추가하고 커밋을 현재 분기에 푸시하라는 메시지가 표시될 때 예를 확인합니다.
-
또는 모든 프롬프트를 건너뛰려면
--source
플래그가 있는 리포지토리의 경로를 제공하고 표시 유형 플래그(--public
,--private
또는--internal
)를 전달합니다. 예:gh repo create --source=. --public
.--remote
플래그를 사용하여 원격을 지정합니다. 커밋을 푸시하려면--push
플래그를 전달합니다. 가능한 인수에 대한 자세한 내용은 GitHub CLI 설명서를 참조하세요.
Git을 사용하여 GitHub에 로컬 리포지토리 추가
- GitHub.com에 새 리포지토리를 만듭니다. 오류를 방지하려면 README, 라이선스 또는 gitignore 파일을 사용하여 새 리포지토리를 초기화하지 마세요. 프로젝트가 GitHub에 푸시된 후 해당 파일을 추가할 수 있습니다. 자세한 내용은 "새 리포지토리 만들기"을 참조하세요.
- GitHub.com의 빠른 설정 페이지에서 리포지토리 맨 위에서 를 클릭하여 원격 리포지토리 URL을 복사합니다.
- Terminal(터미널)Terminal(터미널)Git Bash를 엽니다.
- 현재 작업 디렉터리를 로컬 프로젝트로 변경합니다.
- 로컬 리포지토리가 푸시될 원격 리포지토리 대한 URL을 추가합니다.
$ git remote add origin <REMOTE_URL> # Sets the new remote $ git remote -v # Verifies the new remote URL
- 로컬 리포지토리의 변경 내용을 GitHub.com에 푸시합니다.
$ git push -u origin main # Pushes the changes in your local repository up to the remote repository you specified as the origin
-
GitHub.com에 새 리포지토리를 만듭니다. 오류를 방지하려면 README, 라이선스 또는 gitignore 파일을 사용하여 새 리포지토리를 초기화하지 마세요. 프로젝트가 GitHub에 푸시된 후 해당 파일을 추가할 수 있습니다. 자세한 내용은 "새 리포지토리 만들기"을 참조하세요.
-
GitHub.com의 빠른 설정 페이지에서 리포지토리 맨 위에서 를 클릭하여 원격 리포지토리 URL을 복사합니다.
-
Terminal(터미널)Terminal(터미널)Git Bash를 엽니다.
-
현재 작업 디렉터리를 로컬 프로젝트로 변경합니다.
-
명령 프롬프트에서 로컬 리포지토리가 푸시될 원격 리포지토리의 URL을 추가합니다.
$ git remote add origin <REMOTE_URL> # Sets the new remote $ git remote -v # Verifies the new remote URL
-
로컬 리포지토리의 변경 내용을 GitHub.com에 푸시합니다.
$ git push origin main # Pushes the changes in your local repository up to the remote repository you specified as the origin
-
GitHub.com에 새 리포지토리를 만듭니다. 오류를 방지하려면 README, 라이선스 또는 gitignore 파일을 사용하여 새 리포지토리를 초기화하지 마세요. 프로젝트가 GitHub에 푸시된 후 해당 파일을 추가할 수 있습니다. 자세한 내용은 "새 리포지토리 만들기"을 참조하세요.
-
GitHub.com의 빠른 설정 페이지에서 리포지토리 맨 위에서 를 클릭하여 원격 리포지토리 URL을 복사합니다.
-
Terminal(터미널)Terminal(터미널)Git Bash를 엽니다.
-
현재 작업 디렉터리를 로컬 프로젝트로 변경합니다.
-
로컬 리포지토리가 푸시될 원격 리포지토리 대한 URL을 추가합니다.
$ git remote add origin <REMOTE_URL> # Sets the new remote $ git remote -v # Verifies the new remote URL
-
로컬 리포지토리의 변경 내용을 GitHub.com에 푸시합니다.
$ git push origin main # Pushes the changes in your local repository up to the remote repository you specified as the origin