過去のcommitを変更したい
間違えた内容をcommitしてしまった。
その内容を変更したい。
直前のものであれば、
git reset --soft HEAD^ git reset
これでcommitを戻して、内容を変更してからcommitという手があるが、
commitを新しく繋げるだけなのと、数個前のcommitを変えるときには非常に手間。
ではどうするか
手順
- git logで戻りたいcommitを探す
- git rebase -i xxxxxxで、xxxxxに戻りたいcommitの一個前のcommit idを指定する
- エディタが立ち上がるので、書き換えたいcommitのpickと書かれている部分をeditに書き換える
- (内容を変更する)
- git commit --amendでcommitする(メッセージを変えないならそのまま)
- git rebase --continueで元に戻す