在我公司的工作流程中,我们经常必须在多个维护分支中应用类似的提交。因为我们正处于大幅重构的时期,所以我们通过独立提交来做到这一点(尽可能 cherry-pick ,但这通常是不可能的),而不是通过 merge 。有人讨论过要改为更 git-flow 的工作流程并始终向上 merge ,但由于各种原因目前情况并非如此。
我经常发现自己想知道——我是否将特定的提交应用于所有需要它的分支?我可以通过以下方式到达那里:
git log --all --grep "Issue_number"
这给了我一个包含相关消息编号的所有提交的列表,与分支无关。如果我只能让它也列出这些提交适用的所有分支,我就会满足(目前)。
我尝试使用 How to know which branch a "git log" commit belongs to? 中的一些建议”,但这些似乎没有帮助。
有人可以告诉我如何实现这个目标吗?
最佳答案
根据 orahman 的回答和手册页,我做了一些尝试和错误,发现
git log --decorate=full --source --all --grep "commit#"
成功了。
除非我搞砸了测试,否则似乎需要“=full”和“--source”才能显示任何分支信息,但我无法解释为什么atm会出现这种情况。
关于git log -- 显示提交适用于哪些分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31675750/