Bash에서 커밋메시지 backticks 넣기
문제 상황
다음의 상황에서, 커밋 009decc
의 커밋메시지를 수정하고 싶다.
/pl/java
를 backticks로 감싸서 GitHub 상의 markdown syntax를 적용하고 싶기 때문이다.
해결 방안
1️⃣ git reset
다음과 같이 reset한 후 다시 커밋할 수 있다.
이 방식을 채택할 경우, vscode GUI 상에서 편하게 backticks를 커밋메시지에 넣을 수 있다.
$ git reset --soft HEAD~2
하지만 해당 방식을 사용할 경우 재커밋 과정에서 기존의 author date, committer date가 날라간다.
물론 date도 수정 가능하지만 귀찮다. 그래서 2번의 대안을 선택했다.
2️⃣ interactive rebase
다음의 명령어로 interactive rebase 모드에 들어가 009decc
를 edit으로 수정하고 저장한다.
$ git rebase -i HEAD~2
그 다음 amend 옵션으로 커밋메시지를 수정하면 된다.
다만, bash 상에서 커밋메시지에 backticks를 넣으려면 메시지 리터럴을 "
로 감싸야 한다.
'
로 감싸면 에러가 발생한다.
결과
다음과 같이 수정되었다면 remote에 force push 하면 된다.