如何一次从所有分支为作者git日志?


212

我需要获得作者所做的所有提交的报告。到目前为止,我已经有了包含以下命令的脚本:

git log --pretty=format:"%ad:%an:%d:%B" --date=short --reverse --all --since=2.months.ago --author=Petr

它工作正常。但是,它仅报告当前分支的操作​​。是否有任何选项可以记录所有分支的作者提交消息,而不仅是当前分支

换句话说,git是否可以对存储库中的所有提交进行反向排序(按日期时间)序列,并从该序列中提取日志信息?

解决:(从下面的注释复制,否则隐藏)

问题是我有一个存储库和两个克隆,可以同时在两个分支上工作。我确实将更改推送到原始存储库,但是忘记了将更改获取到克隆存储库。这样--all,将其用于克隆的存储库时似乎不起作用。


猜猜您可以为此编写一个shell脚本:将git logaccepts committish作为其第一个参数:(git log mybranch并列出您使用的所有分支git branch)。
Alexander Pavlov 2012年

@AlexanderPavlov:我可能不明白。什么是committish?是否可以通过一个git命令获取信息?
pepr 2012年

1
我正在从所有分支机构(不仅是当前分支机构)获得提交?这是您提供的预期结果--all。您的命令是正确的
CharlesB 2012年

1
@AlexanderPavlov:不用理会git rev-list解析,git log --all可以。
CharlesB 2012年

1
@CharlesB:那是我对的想法--all,但是它显然对我不起作用。我不理解它的帮助说明:假装好像所有的引用在refs/命令行上都列为<commit>
pepr '04

Answers:


185

您的命令是正确的,因为您使用的--all开关提供了所有分支的所有提交。要回答您评论中的问题,它也可以在裸存储库中使用。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.