Visual Studio Code:并排查看合并更改,而不是自上而下

Visual Studio Code: Review Merge Changes Side by Side, rather than top down

提问人:mattsmith5 提问时间:10/19/2021 最后编辑:mattsmith5 更新时间:8/31/2022 访问量:27188

问:

有没有办法在Visual Studio Code中并排比较文件更改,而不是自上而下?常规 Visual Studio Enterprise 具有此选项。

这是在 git merge 冲突解决期间。

enter image description here

git visual-studio-code vscode-git

评论


答:

59赞 VonC 10/19/2021 #1

2022 年:VSCode 1.69 更新(2022 年 6 月),正如 Audwin Oyong回答中所指出的,现在有一个 3 向合并视图,它允许并排解决。

在此版本中,我们继续开发 3 向合并编辑器。
此功能可以通过设置为 来启用,并将在将来的版本中默认启用。
git.mergeEditortrue

合并编辑器允许您快速解决 Git 合并冲突。> 启用后,可以通过单击“源代码管理”视图中的冲突文件来打开合并编辑器。
复选框可用于接受和合并 OR 中的更改:
TheirsYours

Merge Editor Conflict Resolution Demo

VSCode 1.70(2022 年 7 月)将提供一种打开常规文件的方法(不是 3 路合并模式)。
与差异编辑器相同,它可以使用编辑器标题区域中的操作

https://user-images.githubusercontent.com/1926584/176448981-01a0b0e4-5261-4ec3-9e27-1efb68c6b39a.png

请参阅 PR 155159 及其新操作。merge.openResult

Audwin Oyong 根据发行说明补充道:

要关闭 3 向合并视图,可以设置为 。git.mergeEditorfalse

使用以下命令打开 VSCode 设置:Ctrl,

git.mergeEditor setting

(摘自 Harshil Patanvadiya 的回答


2021 年:默认情况下,您会看到所有冲突“自上而下”,但对于每个冲突,单击“比较更改”将打开一个带有并排差异的选项卡。

https://cloud.githubusercontent.com/assets/1926584/26586117/7e70828a-454e-11e7-9bb6-67646a20bfe0.gif

(从问题 27562 开始)

不理想,但是一个很好的解决方法。


在 VSCode 1.71(2022 年 8 月)中:

合并编辑器:切换自动换行应适用于所有编辑器

当我在合并编辑器中切换自动换行时,这很奇怪,但只有我关注的编辑器才切换了它。
我有点希望所有编辑都能切换它。

我的理由是,切换自动换行通常是长行的症状,如果单个编辑器有长行,那么所有三个编辑器都有长行的可能性很高。

和:

改进了具有/获取冲突标记的文件的合并编辑器故事

最初,我们有这个图标在原始文件和合并编辑器视图之间切换。也可以将它与这个新标签一起使用。
在我看来,git-merge 作为图标选择显得格格不入。
https://user-images.githubusercontent.com/25163139/185460190-0d652b9c-a4a7-4cb6-8958-80e42a72f0f7.png

评论

1赞 Shlomo Gottlieb 6/13/2022
您无法在并排视图中进行编辑(Beyond Compare 允许的方式)很糟糕。
1赞 VonC 6/13/2022
@ShlomoGottlieb我同意。也许在 VSCode 的未来版本中是可能的。
6赞 mr_squall 8/5/2022
那个合并编辑器太可怕了......
1赞 VonC 8/5/2022
@mr_squall 它刚刚在 1.69 中引入。希望它会随着时间的推移而改善。
3赞 PatricNox 8/18/2022
我为这篇文章感到高兴,因为我的 vscode 更新并被迫使用 3 向合并视图,与内联功能相比,它很糟糕
6赞 Audwin Oyong 7/15/2022 #2

VSCode 版本 1.69 现在包括三向合并(3 向合并)。

请参阅发行说明 3 路合并

demo of 3-way merge

评论

2赞 VonC 7/15/2022
好点子,我在旧答案中错过了这一点。我已经更新了上述答案,并带有指向您的链接。
16赞 Virinchi Manepalli 8/18/2022 #3

这是一个可怕的更新。要恢复,只需将其添加到 settings.json 中即可。"git.mergeEditor": false

enter image description here

评论

2赞 VonC 8/18/2022
是的,我确实在回答中提到了这一点。
0赞 victorlin 8/24/2022
这并没有回答最初的问题,但确实回答了看到这个的人可能会问的这个相关问题
7赞 Harshil Patanvadiya 8/31/2022 #4

三种方式显示文件太难了

通过以下步骤轻松更改配置视图

  1. 转到 vscode 设置
  2. 搜索 git.mergeEditor
  3. Git:合并编辑器使其为 FALSE

Git conflig view change

评论

0赞 VonC 8/31/2022
我之前在自己的回答中确实提到过,但这是一个很好的总结。我在回答中使用了你的照片。git.mergeEditor