VS代码-接受未出现的更改1.18版

Rye*_*Guy 3 git visual-studio-code

我正在尝试使用vs代码将合并冲突解决为一个分支。但是,没有出现接受传入更改的命令面板

在此处输入图片说明

此处的命令面板在顶部窗口清晰可见的情况不同。

请帮忙!!!如何使这些命令显示在窗口顶部?

13i*_*mov 160

更新(2022 年 8 月 - 版本 1.71):

由自动启用的git merge 编辑器引起的禁用旧冲突装饰器不再是问题。在新版本中,合并编辑器和旧的内联体验现在可以一起使用。

您还可以通过单击轻松在两者之间切换。
查看发行说明 - 合并编辑器的改进以了解如何实现。

如果更新 VS Code 后仍然看不到“接受更改”,请参阅Bruno Monteiro的回答。

旧版(2022 年 7 月 - 版本 1.70):

您可能也看不到“接受更改”,因为最近 VS Code 引入了Git 合并编辑器,现在默认启用该编辑器。

它允许您通过单击“源代码管理”视图中的冲突文件来查看和解决合并冲突。您可以将其关闭以返回“接受更改”,尽管我认为这样更好。

将此行添加到 VS Code 用户 settings.json 以关闭合并编辑器:"git.mergeEditor": false

我正在为想要比较 merge.editor 关闭和打开的任何人附加屏幕截图:
Git merge editor - off
Git merge editor - on

笔记:

如果您喜欢新的合并编辑器,可以从终端打开它。将以下内容添加到您的 .gitconfig,然后运行 ​​- git mergetool

[merge]
    tool = vscode
[mergetool "vscode"]
    cmd = code --wait --merge $REMOTE $LOCAL $BASE $MERGED
[mergetool]
    keepBackup = false
Run Code Online (Sandbox Code Playgroud)

  • 谢谢,1小时的修复终于结束了。在 VSCode 设置中进行设置(Ctrl + ,),然后 JSON-view 修复了它: ```"git.mergeEditor": false``` (26认同)
  • 这绝对有效,但是......为什么?如此迷茫!需要关闭Git选项才能让Git选项起作用?? (7认同)
  • @JamesToomey 是的,我非常同意你的观点,两者应该协调一致。我相信他们从资源管理器中打开的文件中删除了冲突标记,因此代码镜头不会出现在新的合并编辑器窗口中,但这完全会影响旧视图。好消息是他们也同意!我认为他们几天前合并了一个修补程序拉取请求,即使启用合并编辑器,也会保留冲突标记装饰器。八月版本可能会解决这个问题,我会尝试相应地更新我的答案。 (5认同)
  • 哇。只是哇。我生命中的几个小时都白费了。非常感谢你结束了我的痛苦。:D 这个 MS“更新”(又名禁用完全令人满意的功能)完全破坏了我的工作流程。 (2认同)

小智 70

对我来说解决这个问题的方法是禁用 Git 合并编辑器。您可以在其中找到它File > Preferences > Settings,然后搜索 Git Merge Editor。取消选中该框后,您应该重新启动 VS Code。

在此输入图像描述

  • 无需重新启动。 (4认同)
  • 感谢您对此的快速解决方案“+1”。 (2认同)

Gan*_*tan 28

万一有人还是解决不了这个问题。您可以关闭Git: Merge Editor菜单Setting

在此输入图像描述

VSCode 合并冲突选项不显示


sir*_*sam 20

在 VScode 设置(cmd + P,json 设置)中设置:

  "editor.codeLens": true,
Run Code Online (Sandbox Code Playgroud)

我的设置为 false 并且提交操作没有显示。

取自@Teresa Kozeras 答案中的链接。

设置为真: 在此输入图像描述

设置为假: 在此输入图像描述

这不完全是OP问的问题,但这是谷歌把我带到这里时我遇到的问题。


Bru*_*iro 8

就我而言,我遇到了另一个问题,我的“代码镜头”被禁用了。

您可以转到“设置”并搜索“ codeLens”以确保已启用它。

  • 添加到它,我已经为 diff 编辑器启用了代码镜头,并为普通编辑器禁用了代码镜头,但它仍然不起作用。(可能是一个错误,但对我来说是一个令人讨厌的问题。 (3认同)

Fab*_*uer 7

我想你正在寻找这个工具栏

VS Code 合并冲突工具栏

(来自此Microsoft Repo 的图片)

此工具栏仅在以下情况下出现:

  1. 有任何合并冲突和
  2. 当前文件位于 VS Code 版本控制面板的“MERGE”部分

从我在您的屏幕截图中看到的内容来看,“合并”部分中确实有一个文件。我真的不知道这是否也是您打开的文件(Address.js)。

Address.js 似乎没有冲突标记。在 git 中,冲突标记如下所示:

<<<<<<< HEAD
    ...
=======
    ...
>>>>>>> master
Run Code Online (Sandbox Code Playgroud)

在您的情况下,更改似乎是由 git 自动合并的,没有冲突,这意味着您要查找的工具栏不会在此处显示。

  • 我注意到,对于非常大的存储库,合并中有很多更改,“接受当前更改|”可能需要长达 2-3 分钟的时间。接受传入的更改 | ...` 工具栏显示。 (2认同)

Buw*_*ara 7

在此输入图像描述尝试更改"git.mergeEditor": falseVS 代码设置。


小智 6

这也发生在我身上,我的解决方案是打开设置(命令+逗号),搜索合并,然后禁用 Git:合并编辑器。 在此输入图像描述


V_f*_*_Vj 6

以下是最简单、最容易、最快捷的方法:

禁用 Git 合并编辑器

  1. 转到VS code 中的 文件 > 首选项 > 设置在此输入图像描述
  2. 搜索 Git:合并编辑器。 在此输入图像描述
  3. 取消选中复选框并重新启动 vs Code

享受!!!!!!!!!!!!!!!!


Que*_*uer 5

I hope this help somebody. If the Accept Current Changes and stuff does not appear when git rebasing.

在此处输入图片说明

Just cut the greater than >>>>>>>> [Commit message] and paste it in any lines after the equal ======= signs and within those signs are the codes for Accept Incoming Changes.