在git中列出项目中的所有开发人员
是否有可能在git中列出所有贡献项目的用户(已完成提交的用户)? 任何额外的统计
要显示所有用户和提交数量:
git shortlog --summary --numbered
或者干脆:
git shortlog -sn
如果你想在列表中更具体(find一个独特的提交者和作者列表),你可以使用git log:
git log --pretty="%an %ae%n%cn %ce" | sort | uniq
-
%an
作者姓名 -
%ae
作者电子邮件 -
%n
新行 -
%cn
提交者名称 -
%ce
提交电子邮件
其他占位符在git日志的漂亮的打印文档中描述
你可以试试这个:
git log | grep Author: | sort | uniq
(已经完成提交的用户)
注意: git shortlog
组默认由作者提交 。
如果您需要由提交者进行分组,则需要Git 2.12(2017年第1季度)
git shortlog -snc
见Jeff King( peff
)的 提交03f4082 (2016年12月16日) 。
见Linus Torvalds( torvalds )的commit fbfda15 (2016年10月11日) 。
(由Junio C gitster
合并- gitster
– in commit ad1b4e2 ,2016年12月27日)
Linus Torvalds自己介绍了这个function:
shortlog
:按提交者信息分组在某些情况下,您可能希望将提交按作者进行分组,而不是由提交者进行分组。
例如,当我只想在当前的合并窗口中查找我从
linux-next
中仍然缺less的东西时,我并不关心谁写了一个补丁,就像它来自哪个git tree
一样,归结为“谁犯了罪”。所以让git shortlog取一个“
-c
”或“--committer
”选项来切换分组。
我还没有到处去testing它,但是这对于git repo的项目统计看起来非常好: https : //github.com/visionmedia/git-extras
检查bin目录以查看不同的脚本。
例如:git-count脚本(每个提交者的提交数)
git shortlog -n $@ | grep "):" | sed 's|:||'
你可以尝试惊人的包称为git-extras 。 具体来说,命令git-summary , git-count和其他一些 。
另一种select可以是:
git log --format='%aN' | sort -u
大多数存储库包含每个作者的多个身份([email,name]对)。 如果我可以build议一个非cli解决scheme,请尝试Gitential ,它也可以删除作者身份。