開発メモ

開発関係のメモをいろいろと。たぶん。

gitで最初のコミットを修正

普通に(?)、 git rebase -i で最初のコミットを亡き者にしようとしたら失敗したのでメモ。

$ git rebase -i HEAD~~
fatal: Needed a single revision
invalid upstream HEAD~~

先頭のコミットを修正する場合 git rebase -i --root を使用する。

$ git rebase -i HEAD~~

コミットメッセージを編集する画面になるので、一番上のコミットはpickのままにしておいて、それ以下のコミットをfにして圧縮。

編集前:

pick 4e951dd Initial Commit
pick 285959e 実験中

編集後:

pick 4e951dd Initial Commit
f 285959e 実験中

これでめでたく、最初のコミットを亡き者にすることが出来た。

参考資料

世界三大覚えてられないけど有用な知識 [1] first commitを改竄するには git rebase -i --root - Qiita
http://qiita.com/kwappa/items/cb269903a3e3f87607a2

First commit が git rebase -i できない問題 → git rebase -i --root でできる - 納豆には卵を入れる派です。
http://d.hatena.ne.jp/ken_c_lo/20130421/1366558065