Study/Git
Git) git commit --amend
죈트
2025. 1. 22. 10:10
amend는 가장 마지막 커밋의 내용을 수정하거나 커밋 메시지를 수정하고 싶을떄 사용.
ex) 새 파일을 추가하는 것을 잊었거나, 커밋메시지를 잘못 작성했을 때
1. 기본 사용 방법
1) 커밋 메시지 수정만 하고 싶을 때
가장 마지막에 커밋한 메시지를 바꾸고 싶다면, 변경사항 없이 아래 명령어를 입력.
git commit --amend
편집기가 열리면, 원하는 커밋 메시지로 수정 후 저장.
가장 마지막 커밋 메시지 변경.
2) 빠뜨린 파일을 다시 넣고 싶을 때
- 수정하거나 빠뜨린 파일 추가.
git add <file>
- 마지막 커멧에 추가로 반영
git commit --amend
2. 주의 사항
- 이미 원격 저장소에 푸시된 커밋을 amend하면, 히스토리가 재작성되기 때문에 협업 중인 다른 사람들과 충돌이 생길 수 있다.
- 원격 저장소에 이미 푸시된 커밋을 amend 후 푸시하려면 --force 또는 --force-with-lease가 필요.
- 협업 과정에서 다른 팀원이 사용할 수 있으므로, 주의해서 사용.
- git commit --amend는 마지막 커밋만 수정할 수 있다. 그 이전 커밋들은 rebase 같은 방법으로 수정 가능.
- 커밋 해시가 변경. amend로 수정하면 새 커밋 해시가 생긴다. 원래 있던 커밋은 Git 히스토리에서 사라진 것은 아니지만, 브랜치 히스토리 관점에서 이전 해시는 사용되지 않는 “고아(Orphan) 커밋”이 된다.