我有一个包含许多分支的Git存储库:
MYPROJ-1
MYPROJ-12
MYPROJ-73
MYPROJ-115
MYPROJ-217
integration
master
我需要一些方法来确定分支是否已与“master”合并。一位同事推荐了这个命令:
git cherry <thisbranch> <thatbranch>
例如:
git cherry MYPROJ-217 master
但这似乎只能告诉我在MYPROJ-217分支中的“主”分支中的内容 - 与我想要的完全相反。如果我颠倒了论点,它什么也没有显示。
有人可以帮我解决这个问题吗?我只是想看看分支是否已合并为主分支。
答案 0 :(得分:2)
根据the documentation for git cherry
,git cherry thisbranch thatbranch
会列出thatbranch
但不在thisbranch
中的所有提交。因此,如果您运行git cherry master MYPROJ-217
并且没有输出,则MYPROJ-217
中没有master
中没有提交的提交。因此,MYPROJ-217
必须已合并为master。 (或者,也许,如果它的承诺被重新定位或挑选给主人。)
如果你想要的只是看看哪些分支没有合并到主人,那么这应该做你想要的:
git branch --no-merged master