[git] 커밋 메세지 수정하기 (changing commit message)
로컬에 있는, 혹은 리모트에 이미 올라간 commit message 를 수정하는 방법을 알아봅니다. 가장 최신의 commit 을 수정하는 방법과, 더 오래된 commit 을 수정하는 방법을 알아봅니다.
velog.io
참고한 블로그
Changing a commit message - GitHub Docs
Rewriting the most recent commit message You can change the most recent commit message using the git commit --amend command. In Git, the text of the commit message is part of the commit. Changing the commit message will change the commit ID--i.e., the SHA1
docs.github.com
Git 공식 홈페이지
추가적으로 필요한 내용은 저 블로그와 공식 페이지 넘어가서 보기
1. 가장 최근 commit한 것의 이름을 바꾸려면
git commit --amend
을 통해서 실행해준다.
2. 과거에 이미 커밋해놓은 놈을 or 여러 놈들을 수정하고 싶으면
git log
등을 통해 현재 HEAD로부터 몇번째 커밋인지 확인해준다.
확인 해준 후 n번째 커밋을 수정하고 싶다면
git rebase -i HEAD~n
(여기서 n은 숫자다)
5를 넣고 실행해주면
이런 식으로 나오는데
수정하고자하는 커밋 앞에 있는 pick을 reword로 바꿔주고
←이때 커밋 메세지 수정하는거 아니다.. 이땐 수정할 커밋만 reword로 바꾸기저장하고 벗어나자.
저장하고 벗어나면 이후로 reword로 맨 앞을 바꿔준 커밋이 실행되는데 그때 이름을 수정해주면 된다!
여기까지가 공식문서 입장이다.
-여기부터 나의 시행 착오-
가끔 이런 당황스러운 화면에 막혀 멘붕하곤 했는데
하단 명령어들에서 ^는 Ctrl을 말한다.
그래서 Ctrl + X를 눌러주면
이렇게 나오고 Y를 눌러주면
이런 화면이 뜬다. -> 이 때 그냥 Enter 누르세요..
나는 여기서 완전 멘붕이었다. 내가 Mac은 아니니까 DOS Format으로 저장해야 되나? 도대체 뭐를 선택해줘야 똑바로 저장이 되는거지?
그래서 'git file name to write'로 구글링을 해줬더니
https://stackoverflow.com/questions/42603543/git-commit-message-on-linux-terminal
Git commit message on linux terminal
I am trying to learn how to write a git commit message on a linux terminal. I am presented with the following options after I write my commit message. Which is the first one I am supposed to choo...
stackoverflow.com
상기 so에 따르면 이는 git이 기본적으로 terminal editor로 듣도보도 못한 nano를 사용하기 때문에 발생하는 화면이라고 한다.
그런데 그래서 어떡하라고..!! 어떻게 벗어나는지 알려줘 제발..
그래서 이상한 짓 다했다.
rebase 상태로 공부해본적도 없는 상태가 돼버려서 reset --hard로 밀어버리고 다시 시도하고
별짓 다하다가
이럴수가.. 그냥 Enter누르면 reword 지정해둔 커밋 파일이 뜨게되고 그때 이름을 수정해주면 된다.
이렇게 화면이 뜰 때 commit 메세지를 수정해줘야 한다.
수정 해주고는 그냥 Ctrl + X로 벗어주면 끝!
Git commit 메세지 관리도 참 쉽지가 않다.
'GIT' 카테고리의 다른 글
[GIT] .gitignore 활용 (0) | 2021.10.28 |
---|---|
[GIT] 로그인 유지 (0) | 2021.10.22 |
[git] Revert commit 문제 해결 (1) | 2021.08.23 |
댓글