GIT - 提交源码冲突 - 解决冲突
目录
一、Git冲突原因
当多个用户修改了相同源码文件的同一行代码时因提交顺序错乱发生的冲突(类似数据库操作的并发脏写)。
模拟场景
A用户修改了F1文件第10行代码,但是当时没有提交源码。
B用户修改了F1文件第10行代码,提交了源码。
此时当A用户提交F1文件时会发生冲突。
同步最新源码发现冲突(黄色叹号图标),
打开 Git Commit 菜单查看冲突的文件
二、解决方案
- 差异代码块合并方案
- 替换方案
差异代码块合并方案
点击冲突的文件(Status=Conflict),红色字体的文件。点右键弹出菜单:
Edit Conflicts(编辑冲突)
- MERGE_HEAD (origin/HEAD):Git服务器最新源码
- HEAD:本地源码
操作:选择多行,Use this text block
合并代码块后,点左上角 按钮,弹出对话窗体,点击“Mark as resolved”,标记为已解决。
文件标记为已解决,状态(Status=Modified)
替换方案
Resolved
不做任何处理,标记为已解决。
Resolve conflict using "MERGE_HEAD(origin/HEAD)"
使用GIT服务器的最新版本,并标记为已解决。
Resolve conflict using "HEAD"
使用本地仓库的最新版本,并标记为已解决。
三、参考文章
VS2015源码管理器-GIT解决冲突并提交结果|C/S框架网
https://www.cscode.net/archive/newdoc/cs-210903193602059-88.html
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网