미숑이의 블로그
블로그 홈소개

© 2025 Ryu Mi Sung. All rights reserved.

목차

정상적인 상태와 아닌 상태
정상적인 git branch graph로 돌아온 방법
느낀점
Git/GitHub

[GitHub] 정상적이지 않은 git branch graph 해결하기

류미성
2024년 5월 7일

정상적인 상태와 아닌 상태

❌ 정상적이지 않은 branch 상태

1220ce2b-05fc-4b8d-aaaa-3f1df4777d9a.png

⭕️ 정상적인 branch 상태

fb3aabab-5c86-4dfe-b5bb-2454fc047bf2.png

비교

[Insight] - [Network]에서 확인해본 모습은, 얼핏 비슷해보이지만 다르다!

정상적인 경우에는, main브랜치가 중심이 되어 dev브랜치가 파생되어야 합니다. 그리고 새로운 기능 구현을 위해서는 새로운 브랜치를 만들어야하는데, 해당 브랜치는 또 dev브랜치 에서 파생되어야 하는 상황이예요.

정상적인 git branch graph로 돌아온 방법

  1. 현재 주축이 되고 있는 dev브랜치 에 모든 브랜치를 merge 시키기 (dev브랜치 만 남아있도록!)

  2. 브랜치명 수정하기 (dev → main )

    // 기존 dev가 main 이 되어 main만 남아있게 된다.
     $ git branch -m main
     
     // 남아있는 브랜치를 확인해보니, main 만 잘 남아있다.
     $ git branch --all

    ce330e8c-4dd2-4f32-8abc-177ed79c44fb.png

  3. 해당 상태를 원격에 push 하기

    $ git push -u origin main
     
     // 남아있는 브랜치 확인하기
     $ git branch --all

    98de3deb-54d1-4e19-8bfb-bb8f144b449a.png

  4. 업데이트된 원격 상태 가져오기

    $ git pull

f3d095b4-99f8-4369-9daa-7cbe056bd418.png

  1. 브랜치 생성 후 원격 저장소에 올리기

    $ git switch -c dev
     
     $ git push -u origin dev

    7a5fa33e-09db-4420-8146-fbfc65e79ac8.png

  2. 결과 확인 🎉

    64470c75-d71a-40cd-bd40-395a7b2f2e7f.png

    이미 dev에 많은 commit을 쌓은 탓인지 dev 가 주축처럼 보이지만, 결과는 성공적.


느낀점

브랜치가 엉킨 것이 두 번째인데, 프로젝트를 세팅할 때 초기 작업을 나눠서 진행한 것이 원인이 아닐까 싶어요🥲 여러 차례의 시도 끝에 해결했지만, 실제로 해결하고 보니 어렵지 않았지만, 다음에는 같은 실수를 하지 않아야겠다는 생각이 들었어요.