V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
jeesk
V2EX  ›  git

git 版本管理中历史搜索

  •  
  •   jeesk · 17 天前 · 1279 次点击

    开源项目的 commit 次数太多了, 我记得有些 commit 提交的代码关键字, 但是搜索了一下,没有找到能够搜索提交代码, 只能搜索 commit message , 大佬们有什么高招吗?

    4 条回复    2024-02-11 20:22:43 +08:00
    Dvel
        1
    Dvel  
       17 天前
    Fork 可以直接搜,侧边栏的放大镜,搜索内容选择 Diff Content 。
    geelaw
        2
    geelaw  
       17 天前
    取决于你说的“提交的代码”是什么意思——严格来说每个 git commit 记住的是当时所有的文件,因此同一段代码通常会出现在数个 commits 里面,这大概不是楼主想要的。

    如果是要搜索 diff patch text 里面的内容,可以用 git log 的 -G 。

    如果你要找的代码片段存在于一个已知的 commit 里面,可以在那个 commit 上 git blame 那个代码文件,发现那段代码被 Git 认为最后一次修改的 commit 。
    BlitheChiang
        3
    BlitheChiang  
       17 天前   ❤️ 1
    op 提到的场景我之前也有碰到过,可以尝试这样的方法:假设你的代码片段是`$代码片段`,使用 `git log -S"$代码片段"` 可以搜索出关于提交内容中含有`$代码判断`的提交。
    jeesk
        4
    jeesk  
    OP
       17 天前
    @BlitheChiang 谢谢,确实有点效果.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1536 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 16:53 · PVG 00:53 · LAX 08:53 · JFK 11:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.