69

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

有人知道这样的工具吗?

4

8 回答 8

87

也许IntelliJ IDEA 中的注释是您正在寻找的:

启用注释的左侧装订线

显示和隐藏注释

  1. 在编辑器中打开所需的文件。
  2. 要显示注释,请右键单击左侧装订线,然后选择Annotate
    上下文菜单
  3. 要隐藏注释,请右键单击注释装订线,然后选择Close Annotations
于 2015-08-21T21:30:29.757 回答
43

我只知道 IntelliJ IDEA“查看选择的更改历史记录”功能。

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

于 2013-03-27T14:32:22.743 回答
15

如果您想查看inline此类信息,则可以添加GitToolBox插件。YT 上的实时示例

示例视图: 在此处输入图像描述

如何设置: 在此处输入图像描述 在此处输入图像描述

于 2021-07-14T12:44:30.983 回答
11

混帐责备文档

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 的修订版从(而不是默认的 HEAD)开始回顾:

git blame -L 40,+11 fe25b6d^ -- foo.txt
于 2016-05-11T08:45:49.547 回答
7

git 日志(文档)

git-log显示提交日志。

使用示例

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

git log -L 40,50:foo.txt
于 2016-05-11T08:59:59.810 回答
6

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

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

在此处输入图像描述

于 2019-01-11T07:30:57.807 回答
3

正如Can Git show history for selected lines?中的评论之一所建议的那样?

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

更多信息:每一行代码都会被记录。

于 2014-02-28T08:27:16.037 回答
2

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

在此处输入图像描述

于 2020-11-25T17:46:12.040 回答