git push -f origin master のエラーから回復するにはどうすればいいですか? 質問する

git push -f origin master のエラーから回復するにはどうすればいいですか? 質問する

--forceオプションを使用して間違ったソースをプロジェクトにコミットしてしまいました。

元に戻すことは可能ですか? オプションを使用して以前のブランチがすべて上書きされたと理解しているので-f、以前のリビジョンを台無しにしてしまった可能性があります。

ベストアンサー1

Git は通常何も破棄しませんが、この状態から回復するのは依然として難しい場合があります。

正しいソースがある場合は、--forceオプションを使用してリモートにプッシュするだけで済みます。Gitは、指示しない限りブランチを削除しません。コミットを実際に失った場合は、コミットを回復するための便利なガイド必要なコミットの SHA-1 がわかっていれば、おそらく問題ありません。

最善の策:すべてをバックアップし、ローカルリポジトリに何が残っているかを確認します。可能であれば、リモートでも同じことを行います。git fsck復元できるかどうかを確認します。走らないでgit gc

何よりもまず--force、本当にそう思う場合を除いて、このオプションを決して使用しないでください。

おすすめ記事