2011-05-22 66 views
0


我已經按照我的本地Git倉庫情況:
大師:A --- B ---電Ç< -head
(無姓名):d
混帳:如何刪除根犯

所以在單獨的分支上有特殊的提交「D」,而不是在任何其他分支上。我想刪除「(無名)」分支。當試圖恢復「D」時,我得到:「無法恢復根提交」。

謝謝你的幫助。

回答

1

如果沒有引用D的分支,那麼當你做垃圾收集時,git將刪除引用。

+0

Reflog條目可以防止修剪任何ref(HEAD,分支,標籤等不可訪問的對象。) - 請參閱'gc.reflogExpire'和'gc.reflogExpireUnreachable'配置變量。此外,「年輕」對象默認保存 - 請參閱'gc.pruneExpire'配置變量。因此,用戶可能需要過期reflog條目,並強制修剪年輕的對象,像'git reflog --expire -reachable = now --all && git gc --prune = now'(或者更好的,「手動」用(例如)'git reflog delete HEAD @ {3}''刪除負責的reflog條目。 – 2011-05-23 03:51:40

0

凱西說什麼。運行「git gc」並查看它是否仍然存在。你可能想嘗試的另一件事是在D處創建一個新分支,然後用git刪除分支-D