【Git】消したファイルを戻す方法

【Git】消したファイルを戻す方法 Git

Gitで誤ってファイルを削除してしまった場合、どのようにすれば戻せるのでしょうか?

ここでは、Gitで消したファイルを戻す方法を2つ紹介します。

削除操作を取り消す

削除操作をまだステージングエリアに追加していない場合は、以下のコマンドで削除操作を取り消すことができます。

git reset HEAD <ファイル名>

例えば、sample.txtというファイルを削除した場合は、以下のコマンドを実行します。

git reset HEAD sample.txt

このコマンドを実行すると、sample.txtファイルが作業ツリーに復元されます。

コミット履歴からファイルを復元する

削除操作をステージングエリアに追加済みの場合、または削除したファイルをコミットしてしまった場合は、コミット履歴からファイルを復元する必要があります。

以下のコマンドで、指定したコミットのファイル内容を作業ツリーに復元することができます。

git checkout <コミットID> <ファイル名>

例えば、コミットIDが 1234567890abcdef のコミットから sample.txt ファイルを復元する場合は、以下のコマンドを実行します。

git checkout 1234567890abcdef sample.txt

このコマンドを実行すると、sample.txt ファイルが作業ツリーに復元されます。

削除したファイルの確認方法

削除したファイルを確認するには、以下のコマンドを実行します。

git log --name-status

このコマンドを実行すると、コミット履歴のファイル変更内容が表示されます。

例えば、削除したファイルが sample.txt の場合、以下の出力が表示されます。

commit 1234567890abcdef (HEAD -> master)
Author: [Your name] <[Your email address]>
Date: 2023-09-30 10:03:54 +0900

    Add sample.txt

    D  sample.txt

この出力では、コミットIDが 1234567890abcdef のコミットで sample.txt ファイルが削除されたことがわかります。

注意点

削除したファイルを復元しても、削除した後の変更は取り消されません。

例えば、削除したファイルにコメントを追加してから削除した場合、復元してもコメントは削除された状態のままになります。

また、コミット履歴からファイルを復元する場合、コミット履歴に存在しない変更は失われます。

例えば、削除したファイルに変更を加えてコミットしてから削除した場合、復元しても変更前の状態に戻ります。

まとめ

Gitで消したファイルを戻すには、以下の2つの方法があります。

  • 削除操作を取り消す
  • コミット履歴からファイルを復元する

削除操作を取り消す場合は、削除操作をまだステージングエリアに追加していない必要があります。

コミット履歴からファイルを復元する場合は、復元したいファイルがコミット履歴に存在する必要があります。

また、削除したファイルを復元しても、削除した後の変更は取り消されませんので、注意が必要です。