Gitを使って削除した単体ファイルを復活する

Gitを使って管理しているプロジェクトで、ファイルを誤って削除してpushまでやってしまいました。
今回はそのファイルを復活させるまでの手順です。
「Github push ファイル復元」なキーワードで検索してみると、いくつか上がってきたのですが、今回は

【Git】過去に削除済みのファイルをコミットログから復元する方法

を参考に対応しました。

作業手順

手順としては
1)commit IDを調べる
2)checkoutする

この2つです。

コミットIDを見つける

下記のコマンドで調査します。
% git log --diff-filter=D --summary
commit 7a1b46f1c7955bf806e694b90c0aa875faae74ae (HEAD -> master, origin/master, origin/HEAD)
Author: kumakake <“tu@“kumakake.com>
Date: Sun Feb 12 16:41:51 2023 +0900

m_customer import

delete mode 100644 routes/csv/imp/customer_01.js <- これを復元します

commit ed811c221ebe8a05be5d174c5af3a1463c93f510
Author: “kumakake” <“tu@“kumakake.com>
Date: Sun Apr 12 21:53:26 2020 +0900

0-61 0-44 0-69

delete mode 100644 routes/csv/imp/.mv_tanka.js.swp
delete mode 100644 views/cart/info.ejs.org

今回は、こんな感じで表示をしてくれました。
今回は customer_01.js を復元させます。

ファイルを復元する

下記のコマンドで復元させます。
% git checkout コミットID^ -- ディレクトリ名/ファイル名
% git checkout 7a1b46f1c7955bf806e694b90c0aa875faae74ae^ -- routes/csv/imp/customer_01.js

終わりに。。

最初、削除したファイルはgithubのGUIで復活させるのかと思ってたんですが、ローカルでできました。
って、ローカルにもリポジトリがあるんだから、あたりまえか(^^;

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です