git log exclude renames

时间:2013-02-28 08:15:11

标签: git

我可以列出文件的提交,即使它已被重命名或移动

git log --follow foo.sh

但是,我想“关注”该文件,但只列出实际更改文件的提交。像

这样的东西
git log --follow --exclude-renames foo.sh

2 个答案:

答案 0 :(得分:1)

有点像“nicely display file rename history in git log”,您可以添加--name-status以便:

  • 未选择(grep -v重命名:状态“Rxxx”,同时保留添加“A”或修改“M”)
  • 仍然通过其不同的名称
  • 关注该文件

但是仍然需要对git log命令进行后期处理(使用grep和/或sed)以获得所需的输出:还没有原生的“--exclude-renames” - 类似选项。

答案 1 :(得分:1)

git log --follow --name-status --oneline foo.sh | sed 'h;N;/\nR/d;g'
  • 复制提交行以保留空间
  • 在第二行阅读
  • 如果找到以R开头的行,删除模式空间并开始下一个周期, 否则将空间复制到模式空间

感谢jthill