查找作者修改的所有当前行

时间:2015-08-31 22:34:47

标签: git version-control blame git-blame

我如何在git中确定仍然存在的来自特定作者的所有行。比方说,Tony已经参与了我的项目,我想找到我的开发分支中仍然存在的所有行,并且来自Tony撰写的提交?

2 个答案:

答案 0 :(得分:12)

也许只是git blame FILE | grep "Some Name"

或者,如果您想以递归方式指责+搜索多个文件:

for file in $(git ls-files); do git blame $file | grep "Some Name"; done

或者,如果您正在寻找与上述内容不同的输出,请考虑更新问题以更明确地了解您想要的输出。

注意:我最初建议使用下面的方法,但是你可能遇到的问题是它也可能在工作目录中找到git实际上没有跟踪的文件,因此{{1对于那些文件会失败并打破循环。

git blame

答案 1 :(得分:9)

sideshowbarker大多是正确的,但固定的第二个命令是:

find . -type f -exec git blame {} \; | grep "Some Name"

虽然我更愿意这样做:

for FILE in $(git ls-files) ; do git blame $FILE | grep "Some Name" ; done | less