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

发布于 2024-10-12 22:55:22 字数 280 浏览 2 评论 0原文

您可以将 git log 搜索限制为文件,如下所示:

git log [branch] -- foo.c

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

  • 考虑一下您可以运行 git log 在另一个分支上,shell * 的扩展不起作用,所以你 不能依赖 shell 来完成 文件模式匹配。
  • 另外,您不能指定分支 git ls-files

You can limit your git log search to a file like so:

git log [branch] -- foo.c

But how would you limit the search to a file pattern instead of a full path?

  • Consider that you may run git log
    on another branch, where shell
    expansion of * won't work, so you
    can't depend on the shell to do the
    file pattern matching.
  • Also, you can't specify a branch with
    git ls-files.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

计㈡愣 2024-10-19 22:55:22

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

Or just drop the leading ., i.e.:git log -- *foo.c, or even git log -- ./*foo.c

情栀口红 2024-10-19 22:55:22

我倾向于做这样的事情:

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

I tend to do things like this:

git ls-files [--with-tree=<branch>] [path] | grep '<pattern>' | xargs git log [branch]
烟沫凡尘 2024-10-19 22:55:22

使用 --glob 选项。

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

Use the --glob option.

Ref: http://git-scm.com/docs/git-log

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文