2011-05-22 67 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