[英]Remove a branch including its commits
我创建了一个分支,我正在尝试解决一个无法解决的问题,所以我想删除分支,包括我在其上做的所有提交。 为了论证,我的分支看起来像这样(当用Gitk查看时):
A--B--C--D Master
\
\-E-F Unwanted
我希望它看起来像这样:
A--B--C--D Master
如果我删除了不需要的分支,我最终会改为:
A--B--C--D Master
\
\-E-F
我对提交E和F没有用处,也不希望它们混乱我的Git历史。
对于看起来很简单(也可能是愚蠢)问题的道歉,但我一直无法在其他地方找到合适的答案。
不,这就是你所做的一切。 只要E和F未在任何分支或标记中引用,它们最终将被垃圾收集。 我假设你在gitk中看到它仍然看到提交挂出。 如果你重新启动gitk或用Ctrl + F5强行重新加载,它们就会消失。 他们还在那里,但是git最终会照顾他们。 虽然你可以强迫他们立即清理,但这并不是一个好习惯。 默认时间存活2周孤立的提交是有,因为只是有时候你真的想这些提交的,你只是不知道它,所以让他们成为孤儿,并继续前进。
如果你运行git gc
它会删除未引用的分支(这F
是,假设你没有标签或从中获得其他分支机构),当他们超过一定的阈值(2周默认的年龄大了,你可以调整它--prune=<date>
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.