是否可以在文件/文件夹级别而不是"逐行"级别git blame
?
命令git blame
通常显示影响给定文档中每一行的最后一次提交,但我想知道的是您是否会得到影响每个文件的最后一次提交的列表。从选项来看,使用git blame
是不可能的,但是是否有其他命令可以执行类似操作?
:理想情况下,我想得到一个包含文件名的列表,对于每个文件,我们还获得提交哈希,最后编辑文件的人的姓名以及日期。
不确定它是否适合您的需求,但
git log -1 --pretty=format:"%an" -- path/to/file
将输出最后一个修改文件(或目录(的人的姓名。
评论后编辑:
要在 bash 上下文中循环访问目录的文件,请使用 xargs
:
git ls-files path/to/directory/ | xargs -n 1 git log -1 --pretty=format:"%h %an %cd" --
。并且可以选择,对于带有合理中间列的眼睛来说稍微容易一些:
git ls-files path/to/directory/ | xargs -n 1 git log -1 --pretty=format:"%h %<(20,trunc)%an %cd" --