錯誤我已經做了許多天的工作承諾沒有地方。當我檢查當前的分支git回答我(沒有分支)。所以很多承諾(沒有分支)
事實上,我的印象是,我承諾一個新的分支(除了主人),並且一切都很順利。現在,當我遍歷並檢查甚至是一個非常古老的提交(大約一個月後)的分支時,仍然git說它不在任何地方(即沒有分支)。
我知道,如果只有一個提交,合併將有所幫助。現在我怎麼才能讓所有先前的提交與主合併?
在此先感謝。
錯誤我已經做了許多天的工作承諾沒有地方。當我檢查當前的分支git回答我(沒有分支)。所以很多承諾(沒有分支)
事實上,我的印象是,我承諾一個新的分支(除了主人),並且一切都很順利。現在,當我遍歷並檢查甚至是一個非常古老的提交(大約一個月後)的分支時,仍然git說它不在任何地方(即沒有分支)。
我知道,如果只有一個提交,合併將有所幫助。現在我怎麼才能讓所有先前的提交與主合併?
在此先感謝。
您可能犯了一個所謂的「分離的HEAD」(例如在git checkout abc123ef
之後)。
如果你知道你犯犯上次(即你的「丟失」分支的HEAD
),你應該能夠重置跳轉到本承諾,一切都會好起來的:git branch -f some-branch cbd131ef
。
當你結帳爲「無分支」混帳說:
您在「分離的頭」狀態。您可以環視,製作 實驗性更改並提交它們,並且您可以放棄您在此狀態下進行的任何提交 而不影響任何分支,方法是執行 另一個結帳。
如果您想創建一個新分支來保留您創建的提交,您可以通過再次使用-b和checkout命令(現在或以後)來執行此操作(現在或以後)。 例子:
git的結帳-b new_branch_name
當然,只要你想,你可以合併儘可能多的提交。
要找到一個分離的頭如果你失去了它可以使用git reflog。
你也應該記住,一個分離的頭可以被垃圾收集。
如果你不知道最後一次提交,你可以用'git reflog'找到它 – jalf
謝謝Koraktor,@Jalf。我會嘗試 –
嗨,把它固定好了,謝謝 –