git - 使用合并更改标记打开文件
问题描述
当您在许多版本控制系统(git、svn、perforce)中执行合并时,一种可能性是获取一个带有未解析的“合并更改标记”的文件,如下所示:
common part of the file
>>> ORIGINAL
print("hi there")
==== THEIRS
print("hi there joe")
==== YOURS
print("hi there susan")
<<<<
more common part of the file
就个人而言,如果版本控制系统只是创建了这些文件,并且我可以在闲暇时使用我选择的 difftool 来解决它们,我会更喜欢。就像是vimdiff -m myfile.py
您如何在 vimdiff 中将这样的文件作为 3 路合并打开?你可以在其他工具中这样做吗?
编辑
解决方案
正如@D.Ben Knoble 提到的,你想使用:
git mergetool
这将打开 Git 配置中设置的编辑器,其中包含冲突的双方和要编辑的当前文件。
您可以按如下方式设置编辑器:
[merge]
tool = vimdiff
conflictstyle = merge
另外,我大量使用以下映射来浏览冲突标记:
nnoremap <leader>n /^\(<<<<\\|====\\|>>>>\)<CR>
按<leader>n
搜索冲突标记,然后按n
或N
从一个到另一个。
推荐阅读
- scala - 如何在for和if循环中获取spark scala数据帧的最后一行的第一列值
- mysql - 升级到新版本的 XAMPP 后从文件中恢复 MySQL 数据库
- perl - ppm.bat 安装失败:找不到任何提供 GD-Graph3d 的软件包
- java - Java内存管理和cpu缓存
- javascript - 全局变量不获取值
- linux - 在 if 语句中使用 grep
- c# - 从使用字典填充的组合框中读取值成员
- azure-service-fabric - Service Fabric 客户端 REST API - 正文中参数的语法
- python - Align line graph to xticks on dual axis plot with heatmap
- accelerometer - 压缩来自 MEMS 加速度计的数据并使用 NBIoT 进行传输