본문으로 바로가기

[Git] Branch 생성, Branch 원격 저장소 푸쉬

category 공유/Git, Github 2021. 3. 21. 17:50

Git branch 생성 후 원격 저장소에 푸쉬

버전 관리를 하다보면 git branch를 생성하여 관리하는 것은 필수적이다. 예를들면, 현재 운영중인 branch, 개발중인 branch, 배포 전 QA 진행하는 branch, hotfix 수정하는 branch 등 여러 branch를 생성할 수 있다. 이번 게시글에서는 branch를 생성하고 추가적으로 원격 저장소까지 푸쉬하는 방법을 확인해보자.

git branch 생성

간단하게 생각나는 branch 생성하는 방법은 2가지가 있다.

  • 1. 명령어 : git branch "브랜치 명" -> branch 생성 후 현재 branch 유지
  • 2. 명령어 : git checkout -b "브랜치 명" -> branch 생성 후 생성된 branch로 이동

필자는 2번 명령어를 사용한다. 참고로, branch를 추가하기 전에 다른 사람들이 push 해둔 commit을 pull 할 필요가 있다. 그렇지 않으면 새로 생성된 branch에는 다른 개발자들이 push 해둔 코드들이 없기 때문이다. 이러한 점을 생각하고 branch를 만들어야 한다.

git branch 원격 저장소에 푸쉬

branch를 만들었으면 이제 원격 저장소에 push를 해주어야 한다. 명령어는 매우 간단하다.

명령어 : git push --set-upstream origin "브랜치 명"

원격저장소 생성 이미지 이미지 이미지 이미지 이미지

git branch - submodule 변경

큰 프로젝트를 하다 보면 프로젝트마다 submodule이 있는 경우가 있다. 해당 branch에 맞게 submodule을 수정해주어야 한다. 그렇지 않으면 서로 버전이 맞지 않을 수 있다. 예를들어 main 프로젝트가 sub 프로젝트를 submodule로 사용하고 있고, 매달 각 프로젝트는 새로운 branch를 생성한다고 해보자. Main 프로젝트는 202103을 유지하고 있는데 바라 보고 있는데 submodule 브랜치를 202103으로 변경하지 않고 202102로 유지하면 계속 이전 코드를 pull 하고 있는 것이다. 즉, 최신 코드를 유지할 수 없다. 따라서 submodule을 바라보는 branch도 변경해주어야 한다. 이것도 매우 간단하다. Main 프로젝트에서 vi .gitmodules를 하면 해당 vi 창이 열리게 된다. 그리고 branch = "브랜치 명"을 해주면 해당 branch를 바라보게 된다.

참고로 master branch인데 submodule도 master를 바라보고 있다면 따로 추가할 필요는 없다.

정리

그냥 간단하게 필자가 사용하는 명령어를 나열해보겠다.

  • 1. git checkout master
  • 2. git pull origin master
  • 3. git checkout -b "브랜치 명"
  • 4. < submodule이 있는 경우 >
  • 4-1. vi .gitmodules
  • 4-2. branch 수정 후 저장
  • 4-3. git commit -m "Update submodule branch"
  • 6. git push --set-upstream origin "브랜치 명"

마지막

해당 내용은 틀릴 수도 있다는 것을 감안하여 봐주세요. 틀린 내용 및 오탈자 수정 요청 환영입니다.

반응형