Git - 削除したファイルを復活させる

はじめに

削除したファイルを復活させたい方を導くため、個人的な備忘録も兼ねて記事として残しておきます。

復活手順

  1. 以下のコマンドを実行することで、gitログから削除したファイルのみ閲覧できます。その中から特定ファイルが含まれるcommit IDを探します。
    git log --diff-filter=D --summary
    コマンド実行結果
  2. 以下のようにgit checkoutコマンドでファイルを復活させます。

    項目

    内容

    commit_ID

    上の画像の"commit"の後に続いている黄色いIDを入力

    full_path_of_the_removed_file

    復活させたいファイルのフルパスを入力

    git checkout commit_ID^ -- full_path_of_the_removed_file

    たとえば、画像一番上のコミットのFooter.tsxというファイルを復活させたい場合は以下のコマンドを実行します。
    ちなみに、commit IDは最初の4桁だけで大丈夫です!これは他のコマンドにおいても同様です。

    項目

    内容

    commit_ID

    2af1

    full_path_of_the_removed_file

    src/components/layouts/Footer/Footer.tsx

    git checkout 2af1^ -- src/components/layouts/Footer/Footer.tsx

ポイント

コマンドの打ち間違いを回避するポイントは2つです。

  1. commit IDの後の ^ (ハット)を忘れない!
  2. ファイルのフルパスの前の -- を忘れない!

おわりに

手順としてはファイルを削除したコミットを検索して、特定のcheckoutすることでファイルを復活させるというシンプルなものです。
しょっちゅう行う作業でもないため忘れがちなのでここでご紹介しました〜。