如何制作';git diff branch1…branch2和#x27;在Intellij?

如何制作';git diff branch1…branch2和#x27;在Intellij?,git,intellij-idea,compare,diff,Git,Intellij Idea,Compare,Diff,Intellij有一种很好的方法,可以用表示两个git分支之间的差异 然而,这似乎与 git diff branch1..branch2 有表演的方法吗 git diff branch1...branch2 (带三个点)我已经阅读了IntelliJ上的文档,搜索了VCS上的选项,但没有找到任何指定差异选项的内容 通过阅读diff上的文档,我只能建议您导航到合并库,签出另一个分支并执行diff,如: 假设: branch1是主线 branch2从branch1分支出来 提交abc123是br

Intellij有一种很好的方法,可以用表示两个git分支之间的差异

然而,这似乎与

git diff branch1..branch2
有表演的方法吗

git diff branch1...branch2

(带三个点)

我已经阅读了IntelliJ上的文档,搜索了VCS上的选项,但没有找到任何指定差异选项的内容

通过阅读
diff
上的文档,我只能建议您导航到合并库,签出另一个分支并执行
diff
,如:

假设:

  • branch1
    是主线
  • branch2
    从branch1分支出来
  • 提交
    abc123
    branch1
    branch2
做:


然后转到IntelliJ并比较这两个分支。否则,只需使用命令行
表示法。

还有另一种方法可以看到Intellij Idea中的变化,就像在三点git差异中看到的那样

为什么是三点差 我将描述我需要三点差异时的情况。我需要检查github上有一个很大的pull请求。分支
F(eature)
是从
M(aster)
分支出来的,对两者都做了一些更改,然后
M(aster)
的一些更改已经合并到
F(eature)
。现在,在进行更多更改之后,我想将
F(eature)
合并到
M(aster)

F->M
|    |
*    *
|    |
*    *
|\   |
| \  |
|  \ |

**我找到了一种可以但并不完美的方法

右键单击项目->Git->与比较

然后在“文件修订”对话框中,选择不属于此分支的最上面的提交。这可能很难确定,但很有可能这是另一位作者的第一篇文章。例如,如果这是文件修订历史记录:

d4c3af  today         Craig
c3af21  today         Craig
b2af3a  yesterday     Bob
a1af73  two days ago  Alice

如果我知道我在审查Craig的分支,我会选择Bob的承诺。然后IntelliJ给了我一个差异,只是Craig分支的变化。

我只是在控制台上键入了这两个选项,没有发现任何差异?你期望结果是什么?您是否希望获得与github的比较工具相同的输出,该工具使用
?@bitoiu:作为一种特殊情况,
git diff
将三点语法视为含义:找到列出的两个分支的合并基,然后根据列出的第二个提交对提交进行区分。(我不知道Intellj是否有办法做到这一点。)这并不是我真正想要的,但感谢建议的解决方法。这是一个人为的解决方案,因为除非您在此处打开问题,否则我看不到实现您想要的方法:。他们通常很快就有了新的功能,非常快。
d4c3af  today         Craig
c3af21  today         Craig
b2af3a  yesterday     Bob
a1af73  two days ago  Alice