0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Gitで間違えてコミットしたファイルをadd前の状態に戻したい!泣

Last updated at Posted at 2020-09-26

タイトルの通りです。
先に結論を書いておきます。

git reset HEAD^

以上です。これで解決です。

ここからは、読まなくても問題ないです。
タイトルだけだとよくわからないという方は、お読みください。

(経緯)
あるブランチで作業していたら、いったん今の作業を退避させて、別の作業をしたいと思い、
意気揚々とgit commitし、
git stashしようとおもったのですが、

$ git stash
No local changes to save

あれ?
あーーー!!そうだ、なぜコミットしてしまったんだ、、、泣
(git stashはコミットしていない変更がある状態で上記のコマンドを実行すると、変更した部分が退避されます。)

やばいやばい、ここはgit revert HEADか?
いや、それだとこれまでに変更した作業が消えてしまう、、、、

このまま作業するしかないのか、というときに、やっぱりありました。
(まあそりゃありますよね)

対処前のコミット履歴
$ git log --pretty=oneline | awk '{print $1}'
376980ec2b9005f4a80862da7d0955bd850d9d57
f892d3ceb3632eb38f102ac9d0ed5b587f71a1e3

冒頭でも記載したgit reset HEAD^これで解決です。

対処後のコミット履歴
$ git log --pretty=oneline | awk '{print $1}'
f892d3ceb3632eb38f102ac9d0ed5b587f71a1e3
d34480810741248c1bf8f1d8278f590bc61bc37d

はい、一番上のコミットが消えてますね!
そして、変更したファイルもそのままです。add前の状態に戻っています。

同じような境遇にあわれた方の参考になれば嬉しいです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?