2

我正在尝试从回购中获取(统计)提交信息。因此,我做了:

$ git clone remote/path/to/repo localrepo && cd localrepo
$ git pull
$ git show --since 'Oct-03-2014' --until 'Oct-13-2014' --shortstat

一般来说,如果在那个时间段内有提交在origin/master分支上(我目前正在),上面命令的最后一行将产生我想要的漂亮的摘要输出。

问题是时间段是否包含来自不同分支的合并。对于那些,git 不会产生任何类型的输出(显然合并不包含可以显示的差异)。

那么如何获得--shortstat包含合并差异信息的漂亮摘要呢?

4

1 回答 1

0

正如您所发现的 - 日期/时间戳不是查询 git 历史记录的可靠方法,它们失败的一种方式是处理合并提交。

因此,对于这个特定实例,手动调查您的树并在主线上找到您想要开始的提交(对应于 10 月 3 日)。叫那个SHA_OLD。现在在主线上选择一个对应于 10 月 13 日的 SHA。将其命名为 SHA_NEW。然后使用

git show ^SHA_OLD SHA_NEW --shortstat

将来,您可以通过使用标签来简化此过程。 git tag定期提交,然后将其用作您的参数git show

于 2014-10-15T19:08:48.140 回答