使用git,如何使用`git log`而不是文件路径搜索文件模式?

时间:2011-01-21 17:02:42

标签: git version-control

您可以将git log搜索限制为这样的文件:

git log [branch] -- foo.c

但是,如何将搜索限制为文件模式而不是完整路径?

  • 考虑您可以运行git log 在另一个分支上,shell 扩展*将不起作用,所以你 不能依靠shell去做 文件模式匹配。
  • 此外,您无法指定分支 git ls-files

3 个答案:

答案 0 :(得分:10)

我倾向于做这样的事情:

git ls-files [--with-tree=<branch>] [path] | grep '<pattern>' | xargs git log [branch]

答案 1 :(得分:9)

或者只是删除前导.,即:git log -- *foo.c,甚至git log -- ./*foo.c

答案 2 :(得分:-3)

使用--glob选项。

参考:http://git-scm.com/docs/git-log