Git 修订范围显示警告

Git Revision Range shows warning

我想知道在特定时间范围内进行了多少次提交,因此:

git shortlog -ns master@{2015-01-01}...master@{2015-12-31}

但是 git 提示警告消息:

warning: Log for 'master' only goes back to Sun, 18 Oct 2015 15:47:00 +0200.

如果我这样做 git log >x.log 并查看输出,我还会看到该时间点之前的许多其他提交...

谁能告诉我这里发生了什么或者可能是什么原因?

错误是因为此命令从 reflog 而不是从分支中获取数据。

检查您的 reflog,您会看到最后一次提交与您收到错误的日期相匹配。


这就是您要找的答案:

# print out shortlog in a time range
git shortlog master -sne --since="01 01 2015" --before="31 12 2015"

您可以在短日志中使用任何您想要的参数。
在这个示例中,我使用了:

-n / --numbered

Sort output according to the number of commits per author instead of author alphabetic order.

-s / --summary

Suppress commit description and provide a commit count summary only.

-e / --email

Show the email address of each author.