我不小心做了git un-remove commit之前?
git rm filename.txt -f
現在如果我做了git commit -m ''
,它會犯這個刪除。如何在執行git commit之前將其刪除?
我不小心做了git un-remove commit之前?
git rm filename.txt -f
現在如果我做了git commit -m ''
,它會犯這個刪除。如何在執行git commit之前將其刪除?
從目前獲得的版本提交(HEAD
)到兩個指標(臨時區域,你即將提交)和工作樹:
git checkout HEAD filename.txt
請注意,這不只是對於「unremoval」 - 這是從讓你回版本提交,您是否已經通過改變一個行或刪除整個文件修改它。
此外,如果別人發現這個尋找一個稍微不同的答案,如果你想從指數返回到工作樹中的版本,你可以使用
git checkout filename.txt
這是很方便的時候您管理階段一切爲了一個承諾,然後做一些愚蠢的事(比如刪除文件) - 您可以通過從索引中恢復保存自己。
+1特別是對於提的是,這也是階段文件 - 我認爲它會導致這種混亂(上SO反正)的人通常描述'git的結帳
@馬克:嗯,是的,這可能會讓你大吃一驚。它更有意義,如果你認爲該指數作爲工作的樹,所有操作的存儲庫之間的坐着,不只是工作樹 - >首頁 - >提交。 – Cascabel 2011-04-07 20:42:43
你是男人! – 2016-07-13 08:01:07
我當然希望你在空的消息犯的習慣不是... – Cascabel 2011-04-07 20:28:01
這是令人尷尬的,但是是...我不傾向於這樣做,當我使用的顛覆。但幸運的是,git的默認提交問我要留言 – John 2011-04-07 21:00:02
呀,我推薦的做法是,僅運行'git的commit'(無參數),並讓它打開編輯器,並沿輕移你。 – Cascabel 2011-04-07 21:10:32