うっかり消しちゃったファイルをTortoiseGITで復元する

GIT管理下のファイルを作業中にうっかり削除しちゃった事ないですか?例えば、ログファイルを消すつもりでShift+Deleteで、ソースコードやデータまで巻き添えにしてまうなんてケースです。(GITリポジトリから削除するって事じゃなくて、普通にファイルを消してしまったようなケース)

SVNだと「更新」すれば、リポジトリから再取得してくれますが、GITではそうじゃないようです。プルしたら戻ってくるかと思ったら、まったく復元されないので少々慌てました。

こんな感じで、ファイルを選んでがっさりまとめて削除したとします。

NewImage

全部消えちゃった。

NewImage

ここで、[TortoiseGIT]-[変更の取り消し…]を選ぶと、GIT管理下のファイルが取り消し対象として表示されます。

NewImage

「すべてを選択/解除」をチェックしてOKします。

NewImage

で、無事にソースコードが戻ってきた。

NewImage

どうもOSレベルの機能で削除した場合でもGITリポジトリから削除しようとしていると判断されるようです。うっかりコミットして、リポジトリからも消しちゃいそうです。SVNに慣れていると、ちょっとこの動きは怖いですよね。

コメント

このブログの人気の投稿

TabError: inconsistent use of tabs and spaces in indentation

マクロを含んだ.XLSがExcel2010で開けない

using ディレクティブまたはアセンブリ参照が不足しています。