Git은 협업 프로젝트에서 중요한 역할을 하는 도구 중 하나이다. 때로는 이미 커밋한 내용을 수정해야 할 때가 있다.
커밋 메세지 수정 (1) :: 제일 최근에 올린 가장 마지막 커밋 메세지 수정
1. git commit --amend 명령어란?
git commit --amend
--amend 옵션은 가장 최근의 커밋을 수정하는 데 사용된다. 위 명령어를 실행하면 Git 에디터가 열리고, 여기에서 기존의 커밋 메시지를 편집할 수 있다.
2. 새로운 커밋 메시지 지정하기
git commit --amend -m "새로운 커밋 메세지"
기존의 커밋 메시지를 변경하고 싶다면 -m 옵션을 사용하여 새로운 메시지를 지정할 수 있다.
3. 파일 변경 사항 함께 수정하기
git add 추가수정한파일
git commit --amend
파일 내용도 함께 수정하고 싶다면, 먼저 git add 명령어를 사용하여 해당 파일을 스테이징한다. 그런 다음 git commit --amend 명령어를 실행한다.
커밋 메세지 수정 (2) :: 이전 N번째 커밋 메세지 수정
1. 최근 N개의 커밋 메세지 불러오기
git rebase -i HEAD~N
rebase 명령어를 이용하여 branch의 base를 다시 설정한다.
2. 최근 N개의 커밋 메세지 확인 후 수정할 커밋 pick → reword로 수정하기
pick | 커밋 번호 | 커밋 메세지
pick 1fc6c95 [FIX] 에러 수정
pick 6b2481b [DOCS] 문서 내용 추가
pick dd1475d [FEAT] 기능 추가
수정하고 싶은 커밋 메세지의 pick을 reword로 수정하면 커밋을 수정할 수 있는 Git 에디터가 순서대로 열린다.
커밋 메세지 수정 (3) :: 커밋 취소 후 재 커밋
1. 커밋 취소하고 파일은 STAGED 상태로 보존하기
git reset --soft HEAD^
마지막 커밋이 취소되고, 변경된 파일들은 STAGED 상태로 보존된다.
2. 커밋 취소하고 파일들은 UNSTAGED 상태로 보존하기
git reset HEAD^
git reset --mixed HEAD^
마지막 커밋이 취소되고, 변경된 파일들은 UNSTAGED 상태로 보존된다.
git reset HEAD~N
마지막 N개의 커밋이 취소되고, 변경된 파일들은 UNSTAGED 상태로 보존된다.
3. 커밋 취소하고 파일 삭제하기
git reset --hard HEAD^
커밋 메세지 수정 시, GIT 에디터 사용 방법
1. i키를 눌러 입력 모드로 전환
2. 수정 후 ESC키를 눌러 명령 모드로 전환
3. :wq로 저장 및 종료