【问题标题】:Line history viewer - Git行历史查看器 - Git
【发布时间】:2013-03-17 16:01:09
【问题描述】:

我想知道你们中是否有人知道一种工具,它可以让我在代码中选择一行,然后逐个提交地查看该行历史的列表视图。

有人知道这样的工具吗?

【问题讨论】:

    标签: git ide line versioning


    【解决方案1】:

    我只知道 IntelliJ IDEA“Viewing Changes History for Selection”功能。

    您还可以尝试使用多个git blame 命令来迭代片段的历史记录。

    【讨论】:

    • 我使用 PHPStorm,所以我能够使用“显示历史以供选择”感谢您的帮助 Kan。
    • 此功能是否仅在 intellij 的许可版本中可用?我无法查看我的选择的详细历史记录。
    【解决方案2】:

    正如Can Git show history for selected lines? 中的一个 cmets 中所建议的那样

    git show $(git blame example.js -L 250,260 | awk '{print $1}')
    

    更多信息:Every line of code is always documented.

    【讨论】:

      【解决方案3】:

      也许annotations in IntelliJ IDEA是你要找的:

      显示和隐藏注释

      1. 在编辑器中打开所需的文件。
      2. 要显示注释,请右键单击左侧装订线,然后选择注释
      3. 要隐藏注释,请右键单击注释槽,然后选择关闭注释

      【讨论】:

      • 观看此视频以了解有关如何从使用注释中受益的更多信息:youtu.be/R8QW8s4Ibio
      • 如果我想查看我的选择的历史记录会有用吗?它只显示该行的最后一次提交详细信息,但是如果我想查看该行代码的整个历史记录怎么办?
      【解决方案4】:

      git 责备 (docs)

      git-blame 显示上次修改文件每一行的版本和作者。

      使用示例

      当您有兴趣查找文件 foo 的第 40-50 行的来源时,您可以像这样使用 -L 选项(它们的含义相同 — 都要求从第 40 行开始的 11 行):

      git blame -L 40,50 foo.txt
      git blame -L 40,+11 foo.txt
      

      如果您想找出在特定提交之前谁编辑了该行(在此示例中为 fe25b6d;fe25b6d^ 是fe25b6d):

      git blame -L 40,+11 fe25b6d^ -- foo.txt
      

      【讨论】:

        【解决方案5】:

        git 日志 (docs)

        git-log 显示提交日志。

        使用示例

        您可以指定 -L 选项来跟踪由 "," 给出的行范围的演变。您可以多次指定此选项。

        git log -L 40,50:foo.txt
        

        【讨论】:

          【解决方案6】:

          如果您使用的是 IntelliJ,那么它的注释功能提供了一个选项来对以前的版本进行注释。使用此选项,您可以返回该行的历史记录。

          在下面的屏幕截图中可以看到,此选项及其在社区版中也可用。

          【讨论】:

            【解决方案7】:

            在 IntelliJ 中,您可以在选择一行/多行后,在 git 子菜单中使用 show history 进行选择。

            【讨论】:

              【解决方案8】:

              如果您想查看inline 此类信息,则可以添加GitToolBox 插件。 Live example on YT

              示例视图:

              如何设置:

              【讨论】:

                猜你喜欢
                • 2018-11-01
                • 2014-07-15
                • 2012-08-10
                • 1970-01-01
                • 1970-01-01
                • 2011-04-20
                • 2010-12-19
                • 2016-10-20
                • 2020-10-30
                相关资源
                最近更新 更多