개발

GitHub Private 저장소와 로컬 Git 연결하기

피터JK 2025. 1. 29. 13:33
728x90

GitHub에서 Private 저장소를 생성한 후, 기존 로컬 Git 저장소와 연결하는 방법을 정리했습니다.

1. GitHub 저장소 생성 및 URL 복사

  1. GitHub에 접속하여 새로운 Private 저장소를 생성합니다.
  2. 저장소 페이지에서 HTTPS 또는 SSH URL을 복사합니다.

2. 로컬 Git 저장소와 GitHub 저장소 연결

로컬에서 이미 git init으로 초기화된 프로젝트가 있다면, GitHub 저장소와 연결해야 합니다.

2-1. 원격 저장소 등록

터미널에서 다음 명령어를 실행하여 로컬 프로젝트와 원격 GitHub 저장소를 연결합니다.

git remote add origin https://github.com/username/repository.git

SSH를 사용할 경우:

git remote add origin git@github.com:username/repository.git

2-2. 원격 저장소 연결 확인

정상적으로 연결되었는지 확인합니다.

git remote -v

출력 예시:

origin  https://github.com/username/repository.git (fetch)
origin  https://github.com/username/repository.git (push)

3. 기존 로컬 master 브랜치를 GitHub로 푸시

    1. 현재 브랜치 확인:master 브랜치가 있는지 확인합니다.

 

git branch

    2. master 브랜치를 원격으로 푸시:-u 옵션을 사용하면 이후 git push 시 자동으로 origin master가 설정됩니다.

git push -u origin master

4. GitHub의 기본 브랜치를 master로 변경 (선택 사항)

GitHub의 기본 브랜치는 main일 수도 있습니다. 이를 master로 변경하려면:

  1. GitHub 저장소로 이동
  2. Settings > Branches에서 Default branch를 master로 변경

5. 이후 작업 흐름

GitHub와 연결된 이후에는 아래 명령어를 사용하여 코드 변경 사항을 관리할 수 있습니다.

  1. 변경사항 확인:
    git status
    
  2. 변경사항 추가:
    git add .
    
  3. 커밋:
    git commit -m "Update"
    
  4. 원격 저장소로 푸시:
    git push origin master
    

🚀 마무리

이제 GitHub Private 저장소와 로컬 Git을 성공적으로 연결했습니다! 🎉

 

728x90

 

$ git push -u origin master
To https://github.com/piterjk/byteweb.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/piterjk/byteweb.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

! [rejected] master -> master (non-fast-forward) 오류는 로컬 브랜치가 원격 저장소의 브랜치보다 뒤처져 있을 때 발생합니다. 해결 방법은 다음과 같습니다.


1. 원격 브랜치와 동기화

원격 저장소에 있는 변경 사항을 로컬로 가져온 후 다시 푸시해야 합니다.

git pull origin master --rebase

이후 다시 푸시하세요.

git push -u origin master

2. 충돌 해결이 필요할 경우

위 git pull origin master --rebase 실행 후 충돌이 발생하면, 충돌을 해결한 뒤 다음 명령어를 실행하세요.

git add .
git rebase --continue
git push -u origin master

3. 원격 브랜치를 덮어쓰기 (주의!)

만약 원격 저장소의 변경 사항을 유지할 필요가 없다면 강제 푸시를 사용할 수 있습니다.
(⚠️ 주의: 원격 저장소의 변경 사항이 삭제될 수 있으므로 신중하게 사용하세요.)

git push -u origin master --force

이 방법은 기존 원격 저장소의 변경 사항을 무시하고, 로컬 브랜치의 내용을 강제로 덮어씁니다.


 

728x90