Git:一次搜索以任何方式引用特定文件的所有提交?



是否可以使用OR语义同时运行这 3 个操作,并使用标准寻呼器浏览输出(less

  1. git log '**/foo.c'(在存储库中的某处查找更新foo.c提交(
  2. git log -G foo.c(查找差异包含字符串foo.c的提交(
  3. git log --grep foo.c(查找注释提及字符串foo.c的提交(

https://git-scm.com/docs/git-log

谢谢!

没有"one"命令可以输出组合结果,但您可以将它们链接在一起:

  • 一个狂欢会议:

    git log '**/foo.c'; git log -G foo.c; git log --grep foo.c
    
  • 一个 CMD 窗口会话

    git log "**/foo.c"&& git log -G foo.c&& git log --grep foo.c
    

如果通过"OR"语义,您只需要查看一个提交,我建议您将--oneline添加到日志中,并将结果重定向到文件。
然后,您可以sort|uniq该文件,以便一次性获取常见提交。

(git log '**/foo.c'; git log -G foo.c; git log --grep foo.c)>/tmp/f; cat /tmp/f|sort|uniq

最新更新