有没有办法让 git 像 svn ls -v 那样给我输出。基本上是每个文件的列表以及最后一次编辑该文件的人?像这样:
filea.txt Someone Else fileb.txt Another Person
也许甚至使用 SHA 来识别更改发生的提交?
在 git 中问这不是一个很自然的问题,但你可能可以用这样的东西实现你想要的东西。
for a in $(ls); do git log --pretty=format:"%h%x09%an%x09%ad%x09$a" -1 -- "$a"; done
这会遍历当前目录中的每个文件并对其执行 agit log以找到影响它的最后一个提交。
git log
它不是很有效,因为它搜索每个文件的 git 历史记录,并且不努力重用以前搜索的结果。然而,它是单行的。