少し前に誤って消したファイルを復旧する
最近gitを使い始めてます.
そして日記を書きたいので,gitでこんなことをやったというのを書こうかと.
正しい(最適)かは分かりませんが….
いつのまにか必要なファイルをdeleteしてコミットしてしまったようで,ファイルfoo.cppがトラックから消えてました.
調べたところ,コミットabcdでコミットしてしまったようなのでrebaseして復旧します.
// 変更をあっちへぽい!(((ノ≧∇≦)ノ
git stash
// abcdの親からrebase
git rebase -i abcd^
// abcdを編集する
-pick abcd
+edit abcd
pick some
// foo.cppをabcdの親から復旧
git reset abcd^ foo.cpp
// abcdへ編集コミット
git commit --amend
// foo.cppをindexからworking treeへ.
git checkout foo.cpp
// rebaseを終わらせる.
git rebase --continue
// 変更をヽ(・o・ヽ) キャッチ!!
git stash pop
git helpで調べながらやったらこうなりました.
もっとスマートな方法とかあるのかな.
というかこれは良いのかな.