Git 如何显示今天哪些分支合并到master中
我知道我能做到Git 如何显示今天哪些分支合并到master中,git,logging,Git,Logging,我知道我能做到 git branch --merged 显示合并的内容,但它只输出所有内容。是否有按日期筛选的方法?否和是,取决于您真正想问的问题 分支标签是临时的东西,可以随意创建和销毁。这是一个提交图,其中创建了一个分支,在一侧添加了两个提交(新分支),在另一侧添加了一个提交(原始分支),合并了两侧,最后添加了另一个提交。在途中的某个地方,合并的分支的名称被删除 我已经用星号*标记了实际的合并提交;其余的提交节点只是普通的o节点 注意,这里没有额外的分支标签,只有主线 o--o--o---
git branch --merged
显示合并的内容,但它只输出所有内容。是否有按日期筛选的方法?否和是,取决于您真正想问的问题 分支标签是临时的东西,可以随意创建和销毁。这是一个提交图,其中创建了一个分支,在一侧添加了两个提交(新分支),在另一侧添加了一个提交(原始分支),合并了两侧,最后添加了另一个提交。在途中的某个地方,合并的分支的名称被删除 我已经用星号
*
标记了实际的合并提交;其余的提交节点只是普通的o
节点
注意,这里没有额外的分支标签,只有主线
o--o--o---*--o <-- mainline
\ /
o--o
图形现在完全相同,但我们添加了一个名为aux
的分支标签:
o--o--o---*--o <-- mainline
\ /
o--o <-- aux
给予:
............<-- newbranch
.
o--o--o---*--o <-- mainline
\ /
o--o <-- aux
现在,*
提交不再是标记为aux
的提交的直接后代。但是,我们可以确定*
是标记为aux
的提交的祖先的直接后代。但是我们不能(没有额外的帮助)重建这样一个事实:aux~1
过去被命名为zorg
,而zorg
被合并到mainline
,而aux
不再合并到mainline
所以,你需要自己回答的问题是,在这些分支标签名称中放入多少库存,这些库存可以随意创建和移除;以及是否查找合并提交并将其与分支名称所指向的提交进行比较;然后询问提交上的两个日期中的一个是否足以作为过滤器
有两个日期,“作者”和“提交人”,以及两个用户名和电子邮件地址。您可能想要提交者日期,尽管这两个日期通常是相同的,而且对于合并,有不同日期的情况尤其罕见。另外,请注意,您可能需要考虑时区(取决于您自己如何进行“IsIt today”测试)
如何获得提交日期 对于
git branch--merged
声明合并到目标分支中的每个分支b(让我们称为目标t)
git rev parse
获取每个b的原始SHA-1git rev list--mergest
,我们可以找到作为t的祖先的合并提交的修订git rev list
随提交一起生成这些ID;请参见--parents
)b
的所有SHA-1都用完,或者您的合并用完
$ git branch newbranch mainline~3
............<-- newbranch
.
o--o--o---*--o <-- mainline
\ /
o--o <-- aux
o--o--o---*--o <-- mainline
\ /
o--o--o <-- aux