Git:如何查找提交合并到主分支的时间?

14
我想在我的项目中创建一个度量标准,衡量从提交到进入主分支需要多长时间。
这可行吗?对于快进式提交,似乎无法从git日志中获取此信息。
如果我可以获得X天前仓库的快照,也许我可以计算出来。另一个选择是获取记录分支HEAD何时修改的日志。
更新:如果在每个发布时创建一个带注释的标签,您可以查看包含提交的标签的日期。以下是如何列出包含在标签中的提交

使用 git show --pretty=fuller SHA1 命令,您可以查看作者日期和提交日期;顺便说一句,在使用 Gerrit 时,会添加一个提交 ID 来跟踪分支之间的提交,您的项目也可以采用类似的方式实现。 - OznOg
请参考以下链接:https://dev59.com/j2kv5IYBdhLWcg3wdQhT 和 https://dev59.com/jaDha4cB1Zd3GeqP_CZm - Rishabh Agarwal
1个回答

7
考虑到提交本身不知道它属于哪个分支,这并不容易。
它没有跟踪“事件”,也就是没有记录它是在X分支创建的,然后合并(可能是快进)到Y分支中。
只有git reflog记录HEAD更改,但它时间上受限制
正如OP所提到的,您需要添加元数据(例如注释标签,但您也可以考虑git notes),以便记住所需的信息。

由于没有永久的记录分支读取更改的寄存器,真正可行的解决方案是创建一个带注释的标签,并查看其中的提交。在Git中获取标签之间的提交列表 - neves
@neves 我同意,并已将您的评论包含在答案中以增加可见性。 - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接