2017-09-10 38 views
1

是否安全到git reset --hard <ref>在分離HEAD模式(不考慮未被改變的變化)? AFAIK,所有這一切都是指向HEAD的參考和檢查索引和工作樹,就像git checkout <commit>會,並且相同的沙箱的東西仍然適用。它是否正確?所以沒有危險,只要沒有分支尖端移動,對吧?這在分離HEAD模式下不會發生?是git重置--hard <ref>安全在分離的頭

回答

1

如果您有分離的HEAD,那麼只有HEAD移動到<ref>。如果你有一個分支簽出,那麼它也會將分支移動到該狀態。

有一點要注意的是,沒有提交被真正刪除,它們可能不再是一個正常的git log命令可見 - 但除非你做一個git gc --prune(GIT乾淨)或東西,那麼你仍然可以去的提交你在你的reset命令發出之前就開始使用像git fsck --lost-foundgit log --walk-reflogs --oneline --decorate這樣的命令......也就是說,除非你強制它,否則git永遠不會刪除任何東西。