1
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 1 year has passed since last update.

失敗した時の取り消し方法(git)

Last updated at Posted at 2023-11-11

はじめに

ここ最近、仕事でケアレスミスが多い・・
そこで、やってしまったあとのバージョン管理の取り消し方法をまとめてみた。

事前準備

 git log 

下記のようにログが表示されるので、取り消したいコミット記録のひとつ前のコミットIDを使う。

(例)

commit ( hash_param ) ←これを無かったことにしたいときは
Author: 
Date:   

    test commit

commit ( hash_param2 ) ←このIDを使う
Author: 
Date:   

    test commit

コミット後にミスに気づいた

git add まで戻したい時

 git reset --mixed ( hash_param2 )

ローカルの変更は残したい時

 git reset --soft ( hash_param2 )

ローカルの変更も廃棄したい時

 git reset --hard ( hash_param2 )

プッシュ後にミスに気づいた

※resetコマンドのオプションは任意で

 git reset ( hash_param2 )

上記コマンドの時点では、ローカルブランチの変更がもどっただけ。
その状態で、強制的にプッシュすることでリモートブランチもコミット履歴含め戻すことができる。
(ただし、コマンドを打ち込んだ日付になるので注意)

 git push -f origin main

(おまけ)コミット履歴を残したい時はrevertを使う

resetと違い、取り消したいコミットログそのものを対象にする。
(例)

commit ( hash_param ) ←これを無かったことにしたいなら、このIDを使う
Author: 
Date:   

    test commit
 git revert ( hash_param )

これで、コミットを打ち消したというログが残る。
リモートに適用したい場合はpushする。

 git push origin main

参考

https://zenn.dev/nekoniki/articles/f238efa56eb869
https://wataru55120.hatenablog.jp/entry/2023/09/26/113827
https://nanayaku.com/git-delete-reset/

1
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
1
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?