Git归咎于文件/文件夹级别?

时间:2019-04-08 12:10:28

标签: git git-blame

是否可以在文件/文件夹级别而不是“逐行”级别上git blame

命令git blame通常显示影响给定文档中每一行的最后一次提交,但是我想知道的是,您是否获得影响每个文件的最后一次提交的列表。从选项来看,无法使用git blame,但是还有其他命令可能会执行类似操作吗?

编辑:理想情况下,我想获得一个包含文件名的列表,其中,对于每个文件,我们还获得提交哈希,上次编辑文件的人的姓名以及日期。

1 个答案:

答案 0 :(得分:1)

不确定是否适合您的需求,但

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" --