[Github] 브랜치 명령어

yeolife ㅣ 2023. 7. 17. 20:12

브랜치 조회

로컬 브랜치 조회하기

git branch

 

원격 브랜치 조회하기

git branch -r

 

모든 브랜치 조회하기 (로컬, 원격)

git brach -a

 

현재 브랜치와 병합된 브랜치 조회하기

git branch --merged

 

현재 브랜치와 병합되지 않은 브랜치 조회하기

git branch --no-merged

 

브랜치 관리

새로운 브랜치 생성하기

git branch [브랜치명]

 

해당 브랜치로 전환하기

git checkout [브랜치명]

 

브랜치 이름을 변경하기

git branch -m [브랜치명] [바꿀 브랜치명]

 

브랜치를 삭제하기

  • 병합되지 않은 브랜치는 삭제 불가
git branch -d [브랜치명]

 

브랜치 병합 (merge)

현재 브랜치에 다른 브랜치의 변경사항을 병합하기

현재 브랜치(Feature)에 다른 브랜치(Main)의 변경사항을 병합한 새로운 커밋 생성

 

현재 브랜치에 특정 브랜치를 병합하기

git merge [브랜치명]

 

병합하되, Fast-forward 병합을 비활성화하기 (설명 사이트)

  • Fast-forward 병합은 단순히 브랜치 포인터만 이동하고 커밋을 생성하지 않음
  • 이 옵션으로 Fast-forward 병합도 별도의 병합 커밋을 생성함
  • 병합 기록을 남김으로써, 보다 명확하고 추적하기 쉬워짐
git merge --no-ff [브랜치명]

 

병합하되, 변경내역을 하나의 커밋으로 압축하기

git merge --squash [브랜치명]

 

병합을 취소하고 이전 상태로 되돌리기

git merge --abort

 

브랜치 병합 (rebase)

공통 조상을 가진 브랜치를 기준 브랜치에 재배치하기 (설명 사이트 | 예시 사이트)

  • 기준 브랜치의 최신 커밋 위에 재배치함

현재 브랜치(Feature)를 기준 브랜치(Main)의 최신 커밋으로 재배치

 

현재 브랜치를 기준 브랜치 위에 재배치하기

git rebase [기준 브랜치]

 

재배치 이후, Fast-forward 관계를 병합하기

병합한 기록을 커밋으로 남기려면 git merge --no-ff [브랜치명] 사용

git checkout [대상 브랜치]
git merge [재배치한 브랜치]

 

다른 관련 명령어

⚡ 저장소 명령어 보러가기

📁 작업 영역 명령어 보러가기

📌 커밋 명령어 보러가기

🔑 계정 명령어 보러가기