-
[Git] commit을 변경하는 git commands📖 개발 공부/git 2023. 5. 14. 22:32
git commit —amend
git commit 커맨드에 —amend 옵션을 붙이면 직전에 남긴 커밋 메시지를 수정할 수 있다.
예를 들어 다음과 같이 오타를 포함한 커밋을 한다고 치자.
git commit -m "feat: date_pickeㄱ 구현"
이를 —amend 옵션을 통해 수정할 수 있다.
다음과 같은 텍스트 에디터가 나오면, 커밋 메시지를 수정하면 된다.
--amend 를 실행하면 commit id가 완전히 변하게 된다.
git cherry-pick <commit_id>
다음 명령어는 다른 브랜치에 있는 커밋을 선택적으로 현재 브랜치에 적용시킬 때 사용하는 커맨드이다.
현재 branch에 붙는 commit은 새로운 commit id가 부여된다.
-n flag를 추가하면 add만 수행하고 commit은 하지 않는다.
git rebase
git rebase 는 여러 commit 반영하는 커맨드이다.
rebase를 통해 여러 commit을 하나로 합치거나, 특정 commit을 건너 뛸 수 있다.
현재 branch와 대상 branch의 공통 조상부터 대상 branch의 마지막 commit까지 모든 commit을 순서대로 하나씩 가져와서 현재 branch에 덧붙인다.
git rebase <대상 Branch 이름>
병합을 하면 브랜치의 커밋 메시지가 시간 순서대로 합쳐진다. → 재정렬되는 commit은 이전과 다른 commit id가 부여된다.
Rebase 명령에 -i(interactive) 옵션을 덧붙여 사용하면 Commit들의 순서를 바꾸고 첨삭하거나, 몇 개의 Commit을 하나로 합치는 등의 작업을 수행한 뒤 가져올 수 있다.
이는 리베이시라고도 불린다.
git rebase -i HEAD~3
이 작업 이후 commit들 또한 모두 commit id가 바뀐다.
git merge
git merge는 여러 커밋 시퀀스를 하나의 통합된 기록으로 결합한다.(branch를 통합한다.)
반응형'📖 개발 공부 > git' 카테고리의 다른 글
[Git] Git 커밋 되돌리는 다양한 방법 (git reset / git revert) (0) 2023.07.14 [Git] Git의 다양한 merge 방법 이해하기 (Merge / Squash & Merge / Rebase & Merge) (0) 2023.05.28