使用git blame命令,能否只查看某个日期之后对文件所做的更改记录?
我试图在一个有超过10000行和大量提交记录的文件上运行git blame命令。但是仅仅使用git blame很难找到最近的更改。
请阅读git-blame手册中的Specifying Ranges部分。你需要特别关注--since
选项:
当你对于文件
foo
不关心早于三周之前的更改时,你可以使用类似于git rev-list的修订范围来指定:
git blame --since=3.weeks -- foo
当使用修订范围限定符来限制注释时,自范围边界(在上面的示例中,是最近的提交超过3周的提交)以来未更改的行将被归咎于该范围边界提交。
因此,实质上,在您指定的时间之前修改的任何行都将以
^
字符开头,因为这是范围边界的标记。然后,您可以使用
grep
过滤以^
开头的行:
git blame --since=3.weeks -- foo | grep -v '^\^'
git blame --since=3.weeks -- foo | grep -v '^\^'
” 是个很棒的收场!谢谢。 - Philip Oakley