如何在Git中获取一组文件的所有作者



我希望得到git gurus/bash/awk的一些帮助。我想得到一个所有人的列表,他们出现在特定文件组中每个文件的git指责中。示例:

  • 文件A和B
  • git指责将约翰、特里和梅里列为A中各行的作者
  • git指责将Jane和Mike列为B中各行的作者
  • 该命令将文件A和B作为输入,并返回Jane、John、Terry、Merry和Mike

所以我的想法是:

  • 我完成了一个分支的工作
  • 执行该命令,将该分支上与master相比修改过的所有文件作为输入,并返回这些文件中行的所有作者的列表

这个想法是知道谁来ping评论。

您可以使用log,然后通过管道连接到sort

git log --all --pretty=format:"%an" -- path/to/fileA path/to/fileB | sort -u

如果你想要一个别名,请选择

git config --global alias.who '!f() { git log --all --pretty=format:"%aN" -- $1 | sort -u; }; f'
# then just
git who "path/to/fileA path/to/fileB"

列出路径为$path的文件中所有行的作者。

git blame --porcelain -- $path | sed -n -e '/^author /s/^author //p' | uniq -u

处理一组文件,如a和B,

for path in A B;do
git blame --porcelain -- $path
done | sed -n -e '/^author /s/^author //p' | uniq -u

相关内容

  • 没有找到相关文章

最新更新