IntelliJ:在本地和git commit/branch之间查看所有已更改文件的diff

Jon*_*sen 81 git intellij-idea

使用IntelliJ的diff查看器是一种非常好的查看代码的方法,因为您可以使用IntelliJ代码编辑器的所有功能(重构,完成等)在本地版本中进行更改.

不幸的是,当你在IntelliJ中进行代码评审时,我还没有弄清楚如何做最重要的事情,即:查看工作树中所有已更改文件的差异(签出到要合并的分支)和另一个分支(您计划合并的分支,例如"master").

有谁知道如何做到这一点?

Jon*_*sen 76

这已经实施.为了比较你做的两个分支:

  1. 查看您要与之比较的其中一个分支.
  2. 在IntelliJ窗口右下角的状态栏中的Git分支弹出窗口中选择要与之比较的分支.显示带有一些选项的弹出窗口.
  3. 选择"比较"选项.
  4. 默认显示所有提交,您还可以选择"差异"选项卡以显示实际更改.

在他们的一篇博文中更详细地描述了这一点.

  • 使用任意提交而不是分支也可以吗?我的意思是我可以快速创建一个本地分支,但这似乎有点麻烦. (2认同)
  • @Robin是的,可以。打开文件的历史记录,选择两次提交,然后按Ctrl-D。它也可以在不同分支之间工作。 (2认同)

unk*_*ror 42

尽管Jon Tirsen的回答是正确的,但您需要阅读整篇文章才能理解如何做到这一点.

这是mac中相同的图像.

  1. 我目前正在与hello_world合作,并希望与大师进行比较. 在此输入图像描述

  2. 接下来会弹出一个窗口.选择Files并按cmd + d

在此输入图像描述

  1. 另一个显示差异的窗口.您可以执行许多不同类型的差异.使用cmd + shift + ]cmd + shift + [在文件之间切换.

在此输入图像描述

差异提示:IntelliJ提供高级差异功能.你可以查看第3张图片上的那些.

  • 如何对整个项目执行此操作,而不是逐个文件执行此操作? (2认同)

Blu*_*shi 38

这在 2020 版本更新中已更改:

您现在需要执行以下操作:

  1. 签出您要比较的分支之一。

  2. 打开分支菜单。

  3. 选择要与之比较的其他分支。

  4. 选择“使用工作树显示差异”

在此处输入图片说明

  • 这是目前最新的答案。其他答案与较旧的 IntelliJ 版本相关,但与当前版本无关。 (2认同)

Wes*_*Gun 13

这是现在实施的。您右键单击该项目并选择“Git - 与分支比较...”并选择master分支。完毕。区分所有文件。