vscode代码冲突合并(vscode怎么解决冲突)

使用vscode解决git本地文件冲突

1.选择冲突文件,贮存本地

2.拉取线上文件,更新至本地目录(这时候本地项目会与线上同步)

3.选择项目,弹出储藏。

4.解决冲突文件

5.文件增加至暂存区

visualstudiocode颜色代码起冲突的时候优先于哪个

"contrastActiveBorder"/在活动元素周围额外的一层边框,用来提高对比度从而区别其他元素

"contrastBorder"在元素周围额外的一层边框,用来提高对比度从而区别其他元素

"widget.shadow"编辑器内小组件(如查找/替换)的阴影颜色

"progressBar.background"表示长时间操作的进度条的背景色,是一个向右滑动同时伸缩的窄条

"foreground"整体前景色

"icon.foreground"工作台中图标的默认颜色

"imagePreview.border"图片边框颜色

"errorForeground"错误信息的整体前景色,颜色仅在不被组件覆盖时适用

活动栏

活动栏颜色"activityBar.activeBackground"活动栏当前选中项的背景色

"activityBar.activeBorder"活动栏当前选中项靠近窗口边缘处有竖条,竖条颜色

"activityBar.activeFocusBorder"按下活动栏的选中项,边框呈现此颜色

"activityBar.background"活动栏背景色

"activityBar.border"分隔活动栏与其他栏的边界

"activityBar.foreground"活动栏选中和悬停颜色

"activityBar.inactiveForeground"活动栏图标颜色

徽章

信息标签颜色"activityBarBadge.background"活动栏角标背景色

"activityBarBadge.foreground"活动栏角标前景色

"badge.background"信息标签背景色,资源管理器显示的“一个未保存”等等,此颜色与activityBarBadge.background不会互相覆盖,这还是jupyter notebook编辑器的一些边框颜色和文字的背景色

"badge.foreground"信息标签前景色

面包屑导航栏

面包屑导航颜色"breadcrumb.foreground"面包屑普通文字颜色

"breadcrumb.background"面包屑导航背景色

"breadcrumb.activeSelectionForeground"点击面包屑导航一段字后可见字变成此颜色并弹出菜单

"breadcrumb.focusForeground"面包屑上的一段字按住不放可见此颜色

"breadcrumbPicker.background"点击面包屑导航一段字后弹出菜单的背景色

按钮颜色

按钮颜色"button.background"按钮背景色

"button.hoverBackground"按钮在悬停时的背景色

"button.secondaryForeground"辅助按钮前景色。

"button.secondaryBackground"辅助按钮背景色

"button.secondaryHoverBackground"辅助按钮悬停

调试

调试工具栏

调试工具栏颜色 "debugToolBar.background"调试工具栏背景色,就是调试的时候一个很窄的窗口

"debugToolBar.border"调试工具栏边框

"debugIcon.continueForeground"调试工具栏图标,竖线和三角

"debugIcon.disconnectForeground"拔开的插销

"debugIcon.pauseForeground"两竖线

"debugIcon.restartForeground"循环箭头

"debugIcon.stepBackForeground"弯箭头和圆点

"debugIcon.startForeground"空心三角,这个出现在侧边栏的一个下拉框上,不在调试工具栏里

"debugIcon.stepOutForeground"上箭头和圆点

"debugIcon.stepIntoForeground"下箭头和圆点

"debugIcon.stepOverForeground"弯箭头和圆点

"debugIcon.stopForeground"空心方块

断点

断点颜色 "debugIcon.breakpointForeground"断点圆形符号颜色

"debugIcon.breakpointUnverifiedForeground"未验证断点空心圆圈符号

"debugIcon.breakpointDisabledForeground"在断点圆形符号单机右键,点禁用断点,断点圆形符号变为此颜色

"debugIcon.breakpointCurrentStackframeForeground"当前断点堆栈帧的图标颜色,D形的小框套着断点图标

"editor.stackFrameHighlightBackground"编辑器调试中,当前行背景色

"debugIcon.breakpointStackframeForeground"所有断点堆栈帧的图标颜色,有时候D形的小框会变成这种颜色,在单步调试时也可以看到普通颜色的D形框突然变成此颜色

"editor.focusedStackFrameHighlightBackground"debugIcon.breakpointStackframeForeground对应的编辑器行背景色

调试视图

调试视图"debugTokenExpression.value"、"debugTokenExpression.boolean"、"debugTokenExpression.number"、"debugTokenExpression.string"调试视图的变量中不同种类值颜色,不是变量的颜色,是值的颜色;用光标悬停在编辑器中对应变量上也可以看到这些颜色的文本(编辑器组件相关颜色未设置)

"debugTokenExpression.name"调试视图中显示的变量名称的前景色

"debugView.valueChangedHighlight"在“变量”视图中可见此颜色,当变量值改变时,此颜色作为值的背景色突然出现后逐渐淡出并消失,整个过程时间很短

"debugTokenExpression.error"调试视图中表达式错误的前景色,在2020年4月的更新中这个颜色开始可以在主题中设置,上图并没有展示此颜色

"debugView.stateLabelBackground"“调用堆栈”(CALL STACK)视图中标签的背景色,显示当前会话或线程的状态

"debugView.stateLabelForeground"“调用堆栈”视图中标签的前景色

"debugView.exceptionLabelBackground"调试器因异常而中断时,“调用堆栈”视图中显示的标签的背景色,上图并没有展示此颜色

"debugView.exceptionLabelForeground"调试器因异常而中断时,“调用堆栈”视图中显示的标签的前景色

面板

面板颜色 "panel.background"面板背景色,面板显示在编辑器区域下方,可包含输出和集成终端等视图

"panel.border"面板与编辑器之间的边界

"panelSection.border"面板标签下还可以拖好多的标签,拖进去多个视图就在面板里中水平堆叠,这些视图的分隔线颜色

"panelSectionHeader.background"当多个视图在面板中水平堆叠时,这些视图的头部背景色

"panelSectionHeader.border"上图中没有此颜色,在高对比主题中也没发现此颜色……

"panelSectionHeader.foreground"当多个视图在面板中水平堆叠时,这些视图的头部前景色

"panelTitle.activeBorder"面板标题下划线

"panelTitle.activeForeground"活动面板标题字体颜色

"panelTitle.inactiveForeground"不活动的面板标题的字体颜色

"terminal.ansiBlack"、"terminal.ansiRed"、"terminal.ansiGreen"、"terminal.ansiYellow"、"terminal.ansiBlue"、"terminal.ansiMagenta"、"terminal.ansiCyan"、"terminal.ansiWhite"、"terminal.ansiBrightBlack"、"terminal.ansiBrightRed"、"terminal.ansiBrightGreen"、"terminal.ansiBrightYellow"、"terminal.ansiBrightBlue"、"terminal.ansiBrightMagenta"、"terminal.ansiBrightCyan"、"terminal.ansiBrightWhite"这些是集成终端里有色文字的颜色

"terminal.background"集成终端背景色

"terminal.border"并排两个集成终端分割线颜色

"terminal.foreground"集成终端普通文字颜色

"terminal.selectionBackground"终端选中内容的背景颜色,此颜色不透明的话会遮挡文字

"terminalCursor.background"设置"terminal.integrated.cursorStyle": "block"之后可见,终端光标变成方块,被方块盖住的字体成为此颜色

"terminalCursor.foreground"终端光标的前景色

"debugConsole.errorForeground"调试REPL控制台中错误消息的前景色,调试控制台输入支持语法着色

"debugConsole.warningForeground"调试REPL控制台中警告消息的前景色

"debugConsole.infoForeground"调试REPL控制台中信息消息的前景色

"debugConsole.sourceForeground"调试REPL控制台中源文件名的前景色

"debugConsoleInputIcon.foreground"调试控制台输入标记图标的前景色

拖放

拖放颜色"activityBar.dropBorder": "#000"当拖动活动栏上的图标时将可以看到此颜色

"panel.dropBorder"面板头部的标签也可以拖动,拖动将看到此颜色

"panelSection.dropBackground"面板向下方拖动到头部以外时可以看到,这样拖动减少了头部的标签数量

"sideBar.dropBackground"侧边栏拖拽节标题可见

"editorGroup.dropBackground"编辑器选项卡拖拽可见

"list.dropBackground"

VSCode快速处理所有冲突

如果文件merge时冲突较多,可以使用Accerpt all incoming去处理一个文件中的所有冲突。

具体为:

Ctrl + Shift + P

快捷键调出控制命令行;

输入incoming即可找到

Merge Conflict: Accept All Incoming

同理可以用类似的预置命令处理保留所有当前修改。

git合并某次提交到其他分支

1、git log查看提交历史,并复制出自己需要的commit号

2、git checkout xxx切换到xxx分支,执行git cherry-pick a0e042cf593514c3b3ad5facf614a6ec17bee2fb,

3、如果提示冲突,就到vscode解决冲突;解决完冲突,git add . --- git commit -m 'xxxx' --- git push。

4、如果没有冲突直接 git push。

vscode怎么取消合并冲突

vscode怎么取消合并冲突。在个人版面设置中心,也就进入个人中心之后,然后就可以取消合并冲突,但是需要取消的前提就是自己要买入的股份。

我在git merge的时候遇到了冲突,怎么解决?

首先我们来看看为什么会冲突,git冲突的原因很简单,就是两个分支当中对同一处代码进行了不同的改动。于是git会困惑,不知道在merge的时候究竟应该怎么做,于是就会出现冲突。

实战

光说不练没有意义,让我们来实际操作一下。

我们首先创建一个一个test.txt文件,在其中写入一行test。git add并且git commit。

接着我们checkout -b创建一个新的分支,在这个分支当中我们把test.txt之前的一行改成get conflict。然后我们同样add commit。

最后,我们回到master分支,尝试merge test_conf分支。merge了之后,会看到这样的结果:

输出的log当中提示我们有两个文件出现了冲突,这个第八篇.md就是当前编辑的文章,由于我们一直实时在写,所以也会产生冲突。但是文章里的冲突看起来不方便,所以我们就不展示相关的冲突了。我们重点来看test.txt这个文件,也就是我们刚才创建的演示文件。

会发现原本我们test.txt只有一行,现在多出了好几行。这个是git在merge的时候处理冲突的方法,它把两边的冲突都保留了下来。用和=======以及这样的符号进行分隔,我们简单介绍一下其中的含义。

其实还是挺明显的,这个 HEAD后面跟着的内容是HEAD指针指向的节点的代码,也就是我们当前所处的分支master分支当中冲突的代码,这些代码的内容一直到========结束。从=========开始一直到最后 test_conf是我们合并进来的分支的代码。

除了直接打开文件之外,我们还可以运行git diff命令来查看冲突。

解决冲突

手动解决

查看完了冲突之后当然是解决冲突,最简单的方法将去做手动合并。手动合并的方法很简单,就是我们选择我们要保留的代码,然后再把, ======, 这些提示行给去掉。最后重新add commit。

放弃合并

这样当然可以完成合并,但是显然并不友好,如果改动量小还行,如果改动量很大的话,那么显然是非常费劲的。如果你觉得改动量太大想要先放弃合并,先想想其他的办法,可以使用git merge --abort命令,这样可以让你的代码恢复到合并之前的状态。如果你运行了git merge之后又进行了一些人为的改动,那么在abort之后,也会被回滚掉。

git merge --abort

mergetool

除了手动合并以及放弃之外,我们还有一些其他的合并工具。比如git官方也开发了一个专门用来合并的工具,叫做git merge tool,它会将找到一份两个分支的祖先代码作为base也就是基准,然后再将两个分支的改动都列举出来作为对比,让我们在git编辑器当中决定要留下什么。

它打开大概是这样的,我个人只用过一次,因为觉得太难用了。

git mergetool

IDE工具

除了git官方之外,一般的IDE当中也都会提供merge的工具。比如vscode当中的git插件为我们提供了非常好用的merge功能,它会用不同的颜色高亮不同分支的代码。并且还提供了几个非常好用的功能。分别是保留当前分支的代码,保留合并分支的代码,以及保留两者和对比改动。

我们用vscode打开test.txt之后会看到:

当我点击compare changes之后,它就会把这两个文件排列在一起给我们观察它们各自的改动,不得不说是非常好用了。

361知讯网

本文链接:http://pdidw.com/vs/32350.html

发表评论

评论列表

还没有评论,快来说点什么吧~