github上的冲突是什么?是怎么产生的?

转载:https://www.zhihu.com/question/57624522

作者:知乎用户
链接:https://www.zhihu.com/question/57624522/answer/1028664416
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

冲突分为多种,例如:编辑冲突、内容冲突、逻辑冲突、树冲突等。常见的有编辑冲突、内容冲突。编辑冲突是指:两个开发者对同一个文件的同一行做了修改。内容冲突是指两个开发者对同一个文件的同一块区域做了修改。以下介绍的冲突都默认指编辑冲突。冲突是针对至少三方而言的,例如:1、公共基础文件base;2、甲基于base修改后的新文件;3、乙基于base修改后的新文件。冲突是指:以“不同方式“ 改变“同一文件”的“相同部分”, 三个条件缺一不可。言外之意就是,以“不同方式“ 改变“同一文件”的“不同部分”, 是不会构成冲突的。难点是对“相同部分”的理解,有另一种说法比较好理解:多人对同一个文件的"同一行"做了不同的修改。值得注意的是:这里的"同一行",是指甲乙都修改了“原来的公共基础文件base的同一行”。即:甲乙都针对“原来的公共基础文件base的同一行“进行了修改。冲突是需要根据一个参考坐标系来确定的,这个参考坐标系是“原来的公共基础文件“。甲乙根据参考坐标系才能确定是否冲突。而很多人单单误以为冲突是指:仅仅直接比较甲乙两个文件的不同。以上为同一行冲突补充:如果连续的两行及以上都被修改,即使每行只被任意一方修改,则这连续部分也会被视为冲突,亲测!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值