※【修正しました】SourceTreeを使うとうまくいかないことが何回かあったので、SourceTreeは使わずにコマンドラインを使って作業します。
このコミットを修正したい、とします。
具体的には、「この行を書かなかった」ことにしたい、とします。
下準備としてgitのeditorを指定しておきます。
~/.gitconfig
...
[core]
editor = /usr/bin/vim
...
...
まず修正したいコミットの一つ前のコミットのハッシュをコピーします。
コンソールから以下のように打ちます。
$ git rebase -i c06c668
するとこんなvim編集中の画面が現れます。
修正したいコミットを「edit」に変えて保存します。
するとこんな画面が表示されます。
SourceTreeで見ると、このようになっています。
修正します。
$ vi convertImage.py
するとSourceTreeは、こんな感じになります。
コミットします。
$ git commit --amend
残りのコミットを適用します。
$ git rebase --continue
途中でコンフリクトが起きたときは普通に対処し、再度git rebase --continue
します。
これで過去のコミットが書き換わります。
今回の記事の内容は全面的に@utwangくんに教えてもらったものです。感謝!
(SourceTree単体でやる方法があれば、ぜひ教えて下さい)
ブログやってます:Weed software