是否有一个git命令来显示在给定日期之后在分支中合并的提交?

时间:2015-10-07 12:37:34

标签: git

我试图找出7月1日之后哪个提交引入了问题。如果我跑:

git log --since 2015-07-01 stable-branch

我将在7月1日之后看到stable-branch中发现的提交。但是我不会看到7月1日之前撰写的提交并在7月1日之后合并,尽管它们很可能是导致错误的原因。

例如,如果有:

$ git log --graph --format='%aD %s' 'c7ebf96a9a4a6143b112c8606d5ee346fb800cec^1..c7ebf96a9a4a6143b112c8606d5ee346fb800cec'
* Wed, 8 Jul 2015 15:36:38 +0200 Merge pull request #4862 from SUSE/wip-11874-hammer
* Wed, 3 Jun 2015 13:13:33 +0200 rgw: Do not enclose the Bucket header in quotes

添加--since 2015-07-01只会显示合并提交,而不会显示提交本身:

$ git log --since 2015-07-01 --graph --format='%aD %s' 'c7ebf96a9a4a6143b112c8606d5ee346fb800cec^1..c7ebf96a9a4a6143b112c8606d5ee346fb800cec'
* Wed, 8 Jul 2015 15:36:38 +0200 Merge pull request #4862 from SUSE/wip-11874-hammer

虽然提交是在6月3日撰写的,但它在7月1日之后在stable-branch合并。

git-log是否有一组选项可以显示在给定日期之后可从stable-branch到达的提交?

更新:以下代码段完全符合我的需要。虽然它很难记住,但有一个更简单的解决方案会很好。

git log --merges --since 2015-09-01 --until 2015-09-11 --format='%H' stable-branch | while read sha1 ; do echo ------------------------------------ ; git log --format='%aD %s' ${sha1}^1..${sha1} ; done

0 个答案:

没有答案