我在主分支上,並且運行git checkout -b ui
。難道噸,工作了一個多星期的過程中,在其中我跑結束:檢出另一個分支後,找不到在Git分支中完成的工作
git add .
git commit -am 'ui'
git checkout master
git merge ui
git push
我然後切換到我的previously- git checkout uploads
工作的一個分支 - 在這一點我在做每一件事情用戶分支丟失了。它沒有在git log
中列出,而git reset --hard HEAD^
將我帶回「ui」分支之前的分支。這是如何發生的?
通過查看reflog並恢復到'ui'提交,我能夠恢復大部分內容,但我不知道是什麼原因導致了這種情況發生?
哦,那是有道理的。當我重新加載一個文件並且所有的增加都沒有了的時候,這種感覺嚇壞了。我並不期待它,因爲我對git很陌生。謝謝 – aperture 2011-02-24 07:59:11
@aperture:事實上,當你第一次看到你的工作樹在「git checkout」之後完全改變時,最令人驚訝 - 如果你在一個倉庫中工作,那裏的人完全** **完全**不同的工作樹同一個存儲庫的不同分支:)作爲一個更一般的觀點,一旦在git中提交了更改,就會讓你很難失去它們,所以經常進行定期的操作是很好的做法。 – 2011-02-24 08:07:57