所以这就是我们目前的情况。我们有一个' dev'分支(其变化不会进入' master' / production)和' X'一些开发人员一直在研究的功能分支。
在功能分支' X'的整个开发范围内,有正常的提交,但接着是' dev'多次合并(包括所有其他分支提交到' dev'),以便可以将其部署到我们的QA实例进行测试。
除了检查那些自己难以指出他们正在处理的票号的开发者的提交消息之外,还有办法确定哪些提交是直接向' X'功能分支而不是与合并一起提交的提交?
答案 0 :(得分:2)
是的。 git log origin/X ^origin/dev
这将为您提供origin/X
的日志,其中删除了所有origin/dev
次提交。您可能还希望在X
之前排除master
之前的提交...
如果你想更进一步,你可以尝试添加--first-parent
(其他人告诉我,虽然这可能会或可能不会根据遵循相同的父母规则的其他用户工作)和--no-merges
这将隐藏您可能想要或不想要的合并提交。
另一个方便的提示是使用shortlog
而不是log
,这将为您提供更多的简化摘要,这些摘要可以方便发行说明,或者在分支中进行沟通。
答案 1 :(得分:-1)
使用git log
选项:
- 第一亲
在看到合并提交时,仅遵循第一个父提交。 在查看a的演变时,此选项可以提供更好的概述 特定主题分支,因为合并到主题分支往往是 只是关于不时调整到更新的上游,这个 选项允许您忽略引入您的个人提交 这种合并的历史。