是不是有办法在VSCode中的冲突之间跳转?

and*_*rew 21 visual-studio-code

尽管我的google搜索,我无法找到一个快捷键(或任何快捷方式)来跳转到下一个冲突,当你在浏览一个文件是冲突模式(在源控制面板打开标志着一个文件(C),其中Accept Current Change | Accept Incoming Change | etc菜单显示).

冲突模式 注意:这与比较模式不同,其中add和dels标有红色和绿色,F7或箭头工作.

Lle*_*wey 18

您正在寻找这些命令:

// merge-conflict.next
// merge-conflict.previous
Run Code Online (Sandbox Code Playgroud)

所以你可以把这样的东西放在你的keybindings.json文件中:

{
    "key": "<your key here>",
    "command": "merge-conflict.next"
},
Run Code Online (Sandbox Code Playgroud)

  • 您可以添加 `mergeConflictsCount &gt; 0` 的 when 子句并使用已在其他地方使用的命令(如 `Alt`+`F5` )。 (3认同)
  • 有人知道这是否可以限制为仅当合并视图聚焦时?我想我只需要添加 `when` 参数,但不确定如何在 vscode 内部调用该视图。 (2认同)

小智 5

搜索“ HEAD”,然后使用F3移至下一个冲突,并使用Shift + F3移至上一个冲突!


Bor*_*nov 5

总结其他答案,有两种好方法可以做到:

  • 只需使用搜索功能,搜索大量><,例如>>>>>。然后使用F3/ Shift+ F3(或Enter/ Shift+ Enter)更快地导航到下一个/上一个冲突。

  • 为相应的命令添加键绑定。最初由 Microsoft 添加然后删除的那些实际上很好,并且它们似乎与默认架构不冲突,至少在 Windows 上:

{   
  "command": "merge-conflict.next", 
  "when": "editorTextFocus",    
  "key": "alt+m down"   
},  
{   
  "command": "merge-conflict.previous", 
  "when": "editorTextFocus",    
  "key": "alt+m up" 
},  
{   
  "command": "merge-conflict.accept.selection", 
  "when": "editorTextFocus",    
  "key": "alt+m enter"  
},  
{   
  "command": "merge-conflict.accept.current",   
  "when": "editorTextFocus",    
  "key": "alt+m 1"  
},  
{   
  "command": "merge-conflict.accept.incoming",  
  "when": "editorTextFocus",    
  "key": "alt+m 2"  
},  
{   
  "command": "merge-conflict.accept.both",  
  "when": "editorTextFocus",    
  "key": "alt+m 3"  
}
Run Code Online (Sandbox Code Playgroud)