LoginSignup
0
0

More than 3 years have passed since last update.

間違えて別ブランチにpush -f したときの対処法

Posted at

普段の開発は一人1ブランチみたいな感じで複数人で1つのブランチを触ることが無いのでgit push -f hogehogeをたまに使うんですが、この間push先のブランチ名を間違えてそのブランチの修正内容を吹き飛ばしてしまいました…

自分のGit史上1番の大やらかしだったのですが、なんとか回避したのでメモがてら残しておきます。

元々のコミットハッシュを取得する。

まずはやらかしたの元々のを取得します。

自分はテンパリすぎてGitHubでみましたがGit logとかでも多分大丈夫だと思います。

PRのログの
2020-09-15 14-30-34.png
という部分を確認します。

この79282afがforce pushされる前のコミットハッシュなのでこれで大丈夫だとは思うのですが念のためコミットの詳細画面へ行って

2020-09-15 14-40-51.png

フルバージョンのコミットハッシュを確認してコピーしておきます。

元のコミットに戻す

やらかしたブランチに移動してそのブランチで

git reset --hard [コピーしたコミットハッシュ]

を実行して元の状態に戻します。
コマンドを実行した状態で元の状態に戻っているはずなので一応確認してください。

再度プッシュする

元の状態に戻っていることを確認できたら

git push -f origin [やらかしたブランチ]

でリモートブランチも元に戻っているはずです。

あとがき

まじでめちゃめちゃ焦りましたが

git reset --hard [コピーしたコミットハッシュ]

が実行できて戻った時点でめっちゃ安心しました。

やらかした時点で落ち着いて解決策をググれたのでなんとか大丈夫でした。
やらかしたときはまず落ち着くことが大事ですね。

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