둘다 하나의 브랜치를 다른 브랜치와 병합할 때 사용하는 명령어이다.
git merge
기존 커밋들을 그대로 냅둔 상태로 병합하게 되므로 협업에서 누가 무엇을 했는지 더욱 명확하게 알 수 있다.
브랜치 병합
먼저 병합 대상 브랜치로 이동한 후, 병합하려는 브랜치 이름을 사용하여 병합하면 된다.
git checkout main
git merge 병합할브랜치명(예: test)
git rebase
기존 커밋들을 다시 재정렬해 한줄로 깔끔하게 표현되지만, 커밋 충돌이 발생할 수 있어 신중하게 사용해야 한다.
git checkout 작업중인브랜치명(예: test)
git rebase 병합할브랜치명(예: main)
커밋 충돌시
충돌난 파일을 수정 후 git add 충돌났던파일명
을 입력 후 git rebase --continue
로 진행이 가능하다.
또한, git rebase --abort
로 rebase를 취소할 수 있다.
git rebase -i HEAD~숫자
실행시 인터페이스가 나타나며, 커밋 히스토리를 수정하거나, 여러 커밋을 합치거나, 커밋 메시지를 변경이 가능하다.
HEAD~숫자로 어떤 커밋까지 포함할지 결정할 수 있다.
git rebase -i HEAD~숫자
3가지 옵션이 나타나는데 각각의 옵션이 가지는 특징은pick
: 해당 커밋을 그대로 유지squash
: 해당 커밋을 이전 커밋과 합침reword
: 해당 커밋의 메시지를 수정
'git > gitCommand' 카테고리의 다른 글
git reset, git revert (0) | 2024.10.14 |
---|---|
git HEAD (0) | 2024.10.14 |
git checkout (0) | 2024.10.11 |
git branch (0) | 2024.10.11 |
git commit (0) | 2024.10.11 |