所以我有一个有44个分支的项目,不是很关键,但也不干净。
因此我的问题是,如何检查哪些分支已经针对主人进行了重新定位。所以我可以逐个删除分支。
答案 0 :(得分:1)
我想也许你的意思是合并而不是重新定位?因为如果您真正要检查的是某些分支是否针对最新的主分支进行了重新设置,那么您只需运行gitk --all
,您将清楚地看到所有基于master上最新提交的分支。但是删除那些分支是没有意义的。
因此,假设您要检查哪些分支包含主分支中已存在的更改,因此不提供其他值并且可以删除,这就是我解决该问题的方法。让我们说其中一个分支名为bugfix42
。然后我会跑
git branch bugfix42.test bugfix42
git rebase master bugfix42.test
git diff master bugfix42.test
如果这适用得很干净并且没有差异,那么很明显bugfix42分支的内容已经出现在master上,bugfix42可以被删除。首先选择低挂果实,所以如果你得到合并冲突,请暂时跳过git rebase --abort
,然后转到下一个分支。完成所有简单的分支后,您可以再次运行其余分支并解决发生的冲突(取决于您要投入多少精力)。最后(或者如果你想要的话)删除所有* .test分支。