1
我有一個git存儲庫,我從開發中推動並從測試和生產拉。恢復整個git存儲庫到一個特定的版本
說我到目前爲止做了17次提交,並且所有的服務器都在同步。
現在我想在生產中恢復提交#15,但不是only a (few) file(s):我希望生產服務器上的所有文件都反映提交#15。
我也不想爲此創建一個新的提交,並且還能夠前滾到最新的提交或其他來自中央存儲庫的提交。
我的第一個猜測是不宣而任何文件運行它,例如,
git checkout [commit-15-SHA1]
有沒有更好/更安全辦呢?什麼是git方式?
您的建議命令完全是*執行此操作的方式。你遇到任何問題嗎? –
我得到了一個「_你處於分離的HEAD狀態,你可以環顧四周,進行實驗性的改變並提交它們,並且你可以放棄你在這個狀態下做出的任何提交,而不會通過執行另一個結賬而影響任何分支。 ]_「 信息。我猜這是因爲我沒有提前儲藏? –
不,「分離HEAD」狀態發生是因爲您當前的HEAD指向沒有任何其他名稱的提交。因此,如果您要根據當前位置進行新的提交,除了記下SHA1之外,您無法引用任何新提交。如果您不打算根據您當前的HEAD進行任何新的提交,則無需擔心。 –