2

git reflog押しつぶされたコミットなど、すべてのアクティビティを表示します(間違っている場合は修正してください)。

git reflog をバックアップするための git CLI コマンドはありますか?

明らかに、レポのローカル バージョンを削除すると、reflog が失われます (間違っている場合は修正してください)。

git push安全とかそういうことでいいのかな?

そうでない場合、reflogの損失を防ぐためにどのようなアプローチをとるべきですか?

更新: Jiri Kremser への回答として、復元後に reflog 内の任意のコミットにバックアップ.git/logsできますか?git reset --hard

4

4 に答える 4

1

reflog はコミットへのポインタであり、実際のコミット データではないため、コミットが十分に古くなり、git が実行されるとすぐにgit gc(ほとんどの場合、隠れて静かに実行されます)、実際のコミットはまだ失われています。reflog をバックアップするのではなく、コードにブランチ ラベルを散らかしたい場合があります。これらは履歴を保存するだけでなく、実際のコミットも保存します。スカッシュ/リベース/その他の破壊的なものに満足したら、これらの古いブランチを削除してください。git gc は喜んで古いデータを再び収集します。

于 2016-04-06T06:12:03.807 に答える