한 줄로 깔끔히 정리된 내역을 유지하기 원할 때 적합한 브랜치를 합치는 방식이다.
'branch' 브랜치를 'main' 브랜치로 rebase하는 방법
1. 'branch' 브랜치로 이동한다.
2. rebase 명령어 입력.
git rebase main
3. 'main' 브랜치로 이동 후 'branch'의 시점으로 fast-forward.
git merge branch
4. 'branch' 브랜치를 삭제한다.
rebase 주의 사항
- 원격 저장소에 push한 브랜치는 rebase하지 않는 것이 원칙이다.
- 가급적 rebase는 아직 원격에 존재하지 않는 로컬의 브랜치들에만 적용하자.
그래도 원격 저장소에 push한 브랜치에 rebase를 적용한다면...
- rebase는 이력을 조작하는 행위기 때문에, 일반 push로는 수행할 수 없다.
- 이력을 조작하고 push 하는 건 다른 개발자에게 위함한 행위이기 때문에, 무조건 혼자 사용하는 브랜치에서만 해야 한다.
- 강제 push 명령어를 통해 충돌을 해결한다.
git push --force
'Git' 카테고리의 다른 글
과거 커밋들을 수정, 삭제, 병합, 분할하는 rebase -i (0) | 2022.09.18 |
---|---|
커밋을 수정하는 commit --amend (0) | 2022.09.18 |
전체 Git Repository가 아닌 일부 특정폴더의 파일들만 이전 버전으로 돌리는 방법 (Reset With a Path) (0) | 2022.04.18 |
Git 서버 IP를 변경하였을 때 Submodule을 받아올 IP가 변경이 안되어 Pull 받을 때 에러 발생할 경우 해결한 방법 (0) | 2022.01.26 |
Git Commit Message 수정하기 (1) | 2021.05.17 |