git log:贡献者列表,因为某些标签?

时间:2014-03-18 11:28:18

标签: git git-log

所以我知道这个很棒的脚本来显示我的repo的贡献者及其相关的提交数量:

#!/bin/sh
git log --no-merges "$@" | grep ^Author: | sed 's/ <.*//; s/^Author: //' | sort | uniq -c | sort -nr

但现在我对一个完全相同的脚本感兴趣,但只能从特定范围的检查点开始(例如:从标签XYZ到主分支HEAD)。

我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

您可以使用git log和提交范围:

git log sha1..sha2

也可能适用于标签。

答案 1 :(得分:0)

您应该在命令中将范围定义为“commit-ish..commit-ish”。 Commit-ish表示“提交标识或标记名称或分支名称或HEAD”

提交之间:

#!/bin/sh
git log ff46a5..e567a98 --no-merges "$@" | grep ^Author: | sed 's/ <.*//; s/^Author: //' | sort | uniq -c | sort -nr

在标签和分支(标签)之间:

#!/bin/sh
git log MyTag..HEAD --no-merges "$@" | grep ^Author: | sed 's/ <.*//; s/^Author: //' | sort | uniq -c | sort -nr