Git - 列出作者创建的文件
Posted
技术标签:
【中文标题】Git - 列出作者创建的文件【英文标题】:Git - List files created by author 【发布时间】:2014-07-30 02:14:25 【问题描述】:有没有办法列出特定作者使用 Git 创建的文件? 我还需要通过文件名(正则表达式/模式)或创建它们的文件夹来过滤这些结果。
所以我要查找的是作者创建(未更新)的文件列表,没有文件名重复和提交消息。
【问题讨论】:
见***.com/questions/4259996/… 我想做的比git log author=foobar
复杂一点。我找到的最接近的是git whatchanged --author="foobar" --name-only --oneline
【参考方案1】:
列出所有提交添加文件,显示提交作者和添加文件;然后将作者粘贴到列出的每个文件的前面:
# add `--author=pattern` to the log arguments to restrict by author
# add anything you like to the `--format=` template
# add any restrictions you like to the `/^A\t/` selector in the awk,
# ... say /^A\t/ && /\.c$/ etc.
git log --name-status --diff-filter=A --format='> %aN' \
| awk '/^>/ tagline=$0
/^A\t/ print tagline "\t" $0'
【讨论】:
完美:git log --author="Vadorequest" --name-status --diff-filter=A --format='> %aN' | awk '/^>/ tagline=$0 /^A\t/ print tagline "\t" $0'
。谢谢!【参考方案2】:
试试这个
$ git whatchanged --author="yourAthor" --name-only
这里还有一些过滤器
http://gitref.org/inspect/
【讨论】:
更接近,但我不想通过提交看到它,既不是提交消息也不是没有文件名重复。不过谢谢。【参考方案3】:git whatchanged --author="AuthorName" --name-only --oneline | grep FilePath | sort | uniq -c
【讨论】:
以上是关于Git - 列出作者创建的文件的主要内容,如果未能解决你的问题,请参考以下文章