2017-09-10 8 views
1

デタッチされたHEADモード(コミットされていない変更は考慮しません)でgit reset --hard <ref>に安全ですか? AFAIK、これはすべて、HEADを参照してインデックスと作業ツリーをチェックすることです。ちょうどgit checkout <commit>と同じサンドボックスのものがそのまま適用されます。これは正しいです?したがって、枝の先端が動かされない限り、危険はありません。そして、これは分離されたヘッドモードでは起こりませんか?gitがリセットされています-hard <ref>はデタッチヘッドで安全です

答えて

1

HEADが分離されている場合は、HEADのみが<ref>に移動します。チェックアウトされているブランチがある場合は、そのブランチもその状態に移動します。

実際に削除されたコミットはありません。通常のgit logコマンドでは表示されなくなる可能性がありますが、git gc --prune(git clean)などを実行しないと、リセットコマンドがgit fsck --lost-foundgit log --walk-reflogs --oneline --decorateのようなコマンドで発行される前に開始したことをコミットします。強制的に実行しない限り、実際には何も削除しません。

関連する問題