Tools/Git&Github
[Git/Github]깃 브랜치 관련 명령어
poopooreum
2024. 12. 26. 14:25
반응형
1. 브랜치 목록 확인
git branch
- 현재 저장소의 로컬 브랜치 목록 확인
- 현재 체크아웃된 브랜치는 *로 표시
모든 브랜치(로컬 + 원격) 확인
git branch -a
git branch -r
git branch -vv
- a 옵션을 사용하면 로컬과 원격의 모든 브랜치를 확인 가능
- r 옵션을 사용하면 원격의 모든 브랜치 확인 가능
- vv옵션을 사용하면 연결된 원격 브랜치 확인 가능
원격 브랜치와 로컬 동기화
git fetch --all --prune
2. 새 브랜치 생성
git branch develop
- 지정한 이름으로 새 브랜치를 생성
- 새 브랜치를 생성만 하고, 자동으로 이동 x
새 브랜치를 생성하고 바로 이동
git checkout branch develop
- 브랜치를 생성한 뒤 자동으로 해당 브랜치로 이동
로컬에서 브랜치를 생성하면서 원격 브랜치와 연결
git checkout -b 생성할 브랜치 이름 원격 브랜치 이름
3. 브랜치 이동
git checkout refactoring
- 지정된 브랜치로 작업 디렉토리를 전환
- Git 버전 2.23 이상에서는 switch로 가능
git switch 브랜치명
4. 브랜치 이름 변경
git branch -m 기존브랜치이름 새브랜치이름
- 기존 브랜치의 이름을 변경
- 현재 체크아웃된 브랜치의 이름을 변경할 때는 브랜치 이름을 생략 가능
git branch -m 새브랜치이름
5. 브랜치 삭제
로컬 브랜치 삭제
git branch -d 브랜치이름
- 브랜치를 삭제
- 단, 삭제하려는 브랜치가 병합되지 않은 커밋을 포함하면 삭제가 거부
강제 삭제
git branch -D 브랜치이름
- 병합되지 않은 커밋이 있어도 강제로 삭제
원격 브랜치 삭제
git push origin --delete 브랜치이름
- 원격 저장소의 브랜치를 삭제
6. 브랜치 병합
git merge 브랜치이름
- 현재 체크아웃된 브랜치에 다른 브랜치의 변경 사항을 병합
- 병합 전, 병합 대상 브랜치를 반드시 확인
7. 브랜치 충돌 해결
병합 시 충돌이 발생하면 Git이 다음 메시지를 표시함
CONFLICT (content): Merge conflict in <파일명>
- 충돌 파일을 수동으로 수정
- 수정 후 충돌 파일을 Git에 추가
- git add <파일명>
- 병합
git merge --continue
8. 브랜치 추적
git branch --set-upstream-to=origin/브랜치이름
- 로컬 브랜치와 원격 브랜치를 연결
- 이후, git pull이나 git push 명령이 편리해짐
9. 브랜치 관련 워크플로우
- 새로운 기능 개발
- 새로운 브랜치에서 기능 개발 시작
- 개발 완료 후 병합
- 병합 후 브랜치 삭제
git checkout -b feature/new-feature
git checkout main
git checkout main git merge feature/new-feature
git branch -d feature/new-feature
반응형