代码之家  ›  专栏  ›  技术社区  ›  Mus mzuba

如何在提交历史记录中找到特定代码行所在的文件?

git
  •  0
  • Mus mzuba  · 技术社区  · 6 年前

    例如,假设这是我的代码行:

    df[df$type == "creator", ]
    

    问题是我记不起这个代码保存的文件,也记不起它是在什么地方/什么时候提交的。

    我使用SourceTree并尝试了 Search 选项,但它只给我搜索的选项 Commit Message , File Changes Authors

    我使用 文件更改

    除了手动查看每个提交中每个文件的每个版本之外,我不知道如何处理它。

    请注意,我也愿意接受使用终端的建议/解决方案。

    代码行可以在三个文件中的任何一个文件中,我大致知道它提交的时间(大约两周前)。

    1 回复  |  直到 6 年前
        1
  •  2
  •   David Ferenczy Rogožan Hugo L.M    6 年前

    git log ,例如:

    git log --name-only -S"<text-you-search-for-goes-here>"
    

    它将打印任何文件在任何时间点包含搜索文本的所有提交,并为每个提交显示:

    • 提交哈希
    • 提交消息
    • 出现搜索文本的文件名(感谢 --name-only )