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

© 2025 Ryu Mi Sung. All rights reserved.

목차

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

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

류미성
2024년 5월 7일

정상적인 상태와 아닌 상태

❌ 정상적이지 않은 branch 상태

비정상 branch 상태

⭕️ 정상적인 branch 상태

정상 branch 상태

비교

[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

    branch명 수정

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

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

    해당 상태를 원격에 push 하기

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

    $ git pull

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

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

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

    원격 저장소 올리기

  6. 결과 확인 🎉

    결과 확인

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


느낀점

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