Git怪files/folders级?

Git blame on files/folders level?

是否可以在 files/folders 级别而不是 "line by line" 级别上 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" --