相关文章推荐
英勇无比的爆米花  ·  在Android ...·  2 年前    · 
谦和的小熊猫  ·  golang里面private ...·  3 年前    · 

在 IntelliJ IDEA 中,您可以追溯项目中的所有更改。这可以帮助您 找到任何更改的作者,查看 文件版本 或提交之间的差异,并在必要时 安全地回滚和撤消更改。

回顾项目历史

您可以查看对与指定过滤器匹配的项目源所做的所有更改。要查看项目历史记录,请打开 Git 工具窗口 的 日志 选项卡 。它显示提交给所有分支和远程存储库的所有更改: Alt+9

日志视图

在多存储库项目中,左侧的彩色条纹表示所选提交属于哪个根(每个根都用自己的颜色标记)。将鼠标光标悬停在彩色条纹上以调用显示根路径的提示:

根路径
  • 通过输入完整的提交名称或消息或其片段、修订号或正则表达式来搜索提交列表。

  • 按分支或收藏分支 、用户、日期和文件夹(或多根项目的根和文件夹)过滤提交。

  • 单击工具栏上的 Go to Hash/Branch/Tag 去 图标或按 Ctrl+F 并指定提交哈希、 标记 或您要跳转到的分支的名称(您将被带到该分支中的最新提交)。

  • 跳转到下一个提交
  • Left Right 键跳转到父/子提交。 如果您在Git 工具窗口 的“ 日志 ”选项卡中 混合了对不同存储库和多个分支的提交,这将特别有用 。 Alt+9

有关 Git 工具窗口 的 日志 选项卡的 更多详细信息,请参阅 日志选项卡 Alt+9

查看特定版本的项目快照

IntelliJ IDEA 允许您查看项目在选定修订版的状态。

  1. 打开 Git 工具窗口 Alt+9 并切换到 日志 选项卡。

  2. 选择一个提交并从上下文菜单中选择 Show Repository at Revision 。

Repositories 工具窗口将打开,其中包含所选版本的项目快照。

查看两次提交之间的差异

IntelliJ IDEA 允许您检查两次提交之间修改了哪些文件,而不必浏览两次提交之间的更改。

  • 在Git 工具窗口 的 日志 选项卡中 选择任意两个提交, 然后从上下文菜单中选择 比较版本。 Alt+9

    带有在选定提交之间修改的文件列表的“ 更改”工具窗口将打开。 显示差异图标 您可以通过单击或按来查看任何文件的差异 Ctrl+D

查看文件历史记录

您可以查看对特定文件所做的所有更改,并找到每个修订版中的确切修改内容。

  1. 在任何视图(在项目工具窗口、编辑器、 本地更改 视图等)中选择所需的文件。

  2. 选择 Git | VCS 主菜单或选择的上下文菜单中 显示历史记录。 历史选项卡添加到 Git工具窗口,显示所选文件的 历史 记录,并允许您查看和比较其修订版本。

  3. 要确定在特定修订中引入了哪些更改,请在列表中选择它。在面板的右侧,差异会立即显示。

  4. 要在专用差异查看器中查看整个文件的差异,请在列表中选择它,然后按 Ctrl+D 或单击 显示差异 工具栏上的按钮。 差异查看器 将打开,显示此修订中的更改。

查看目录的历史记录

除了查看整个项目或特定文件的历史记录之外,您还可以检查在特定文件夹中进行了哪些更改。

  1. 在 Project 工具窗口中选择一个或多个目录,然后选择 Git | 从上下文菜单中 显示历史。

  2. Git 工具窗口 中添加了一个新选项卡 Alt+9 ,其中显示了按选定文件夹过滤的提交。

查看本地文件版本和已提交文件版本之间的差异

您可以检查提交的文件修订与其本地版本有何不同:

  1. 打开 Git 工具窗口 Alt+9 并切换到 日志 选项卡。

  2. 选择您感兴趣的提交,然后在右侧窗格中选择文件。

  3. 单击 显示差异 工具栏上的按钮。

查看更改是如何合并的

IntelliJ IDEA 允许您查看更改如何 从一个分支合并到另一个分支 ,以及在合并期间如何解决冲突(如果有

  • Git 工具窗口 的 Log 选项卡中 ,选择您感兴趣的合并提交。 Alt+9

    • 如果在合并过程中未检测到并解决冲突,IntelliJ IDEA 将在 Changed Files 窗格中显示相应的消息,并建议查看源自双方父母的更改:

      来自父母的改变

      从其中一个节点中选择所需的文件,然后单击工具栏上的 Show Diff 显示差异 图标或按 Ctrl+D 差异查看器 将显示一个两面板差异,允许您将当前版本与选定的父版本进行比较。

    • 如果在合并期间发生冲突,“ 已更改文件” 窗格将显示与冲突合并的文件列表。

      选择所需文件并单击工具栏上的 显示差异 显示差异 图标或按 Ctrl+D 差异查看器 将显示一个三面板差异,允许您将当前版本与其每个父版本进行比较,并查看冲突是如何解决的。

查找代码作者(使用 Git Blame 进行注释)

您可以通过使用VCS 注释 (对应于 git-blame )找出是谁对文件进行了哪些更改。注释视图显示每行代码的详细信息:

注释

当前版本中修改的行的注释用粗体和星号标记。

默认情况下,不同的作者用不同的颜色突出显示(请参阅 配置注释中显示的信息量 )。

从注释视图中,您可以跳转到:

  • Git 工具窗口 的 Log 选项卡中 的相应提交 :使用 Select in Git log context-menu 命令,或将光标悬停在注释上并单击弹出窗口中的提交哈希以及详细信息 Alt+9

  • https://github.com 上的相应提交:使用 Open on GitHub 上下文菜单命令

  • 如果启用了问题导航 ,则错误跟踪系统中的相关问题:将光标悬停在注释上并单击问题链接(如果它包含在提交消息中)

启用注释

  • 在编辑器或差异查看器 中右键单击装订线,然后从上下文菜单中选择 注释。

    您可以为 Annotate 命令分配自定义快捷方式:转到IDE 设置的 Keymap Ctrl+Alt+S 页面并查找 Version Control Systems | 吉特 | 注释

配置注释中显示的信息量

您可以选择要在注释视图中看到多少信息。

  • 右键单击注释间距,选择 查看 并选择您想要查看的信息类型,包括此更改的来源版本、日期、不同格式的作者姓名以及提交号。

    您还可以在 颜色 下设置突出显示。

配置注释选项

  • 右键单击注释装订线并从上下文菜单中选择 选项:

    • 忽略空格 :空格将被忽略(git blame -w )。这意味着注释将指向先前有意义的提交。

    • 检测文件 中的移动:当提交移动或复制同一文件中的行时,此类更改将被忽略(git blame -M )。这意味着注释将指向先前有意义的提交。

    • Detect Movements Across Files :当提交移动或复制同一提交中修改过的其他文件的行时,此类更改将被忽略(git blame -C )。这意味着注释将指向先前有意义的提交。

    • Show Commit Timestamp :如果您希望 IntelliJ IDEA 在 Annotations 视图中显示提交时间戳而不是创建更改的时间,请选择此选项。

自定义日期格式

  1. Ctrl+Alt+S 打开 IDE 设置并选择 外观和行为 | 系统设置 | 日期格式

  2. 单击 VCS 注释旁边的 日期 时间 模式 字段并指定要用于 VCS 注释的日期格式。请参阅 模式参考

注释以前的​​修订

IntelliJ IDEA 不仅可以注释当前文件修订,还可以注释其以前的修订。注释装订线的上下文菜单中提供了以下选项:

您还可以从“历史记录” 视图中注释特定文件。在“ 历史记录” 选项卡中,选择要查看的文件版本,右键单击相应的行并从上下文菜单中选择“ 注释”。

观看此视频,详细了解如何从使用注释中受益: