另一个cnblogs博客 常用汇总

svn如何解决冲突

首先我们明白,当文件正常时,

1、本地是最新文件,修改文件,变红,提交,提交成功,本地是新最新,成功提交远程,远程也从最新变成新最新,同步。

2、本地是最新文件,更新文件,从远程获取新的文件,覆盖本地,本地是新最新,同步。

 

从上我们可以看到,正常情况下用新最新的文件代替最新的文件是正常同步的。

即同步的意思就是正常的,用新最新代替最新。

需要注意的是,这里其实有3个文件,修改前文件是版本1,修改后文件工作文件,远程文件时版本1,因为修改前后不同,所以变红,提交前,修改前和远程是一样的,所以提交成功,大家都是版本2,修改前文件成为版本2。

而更新时,本地存在版本2,远程版本3,中间是紧密无间隔的,所以能直接覆盖,本地拥有了版本3,工作版本也成为版本3

 

我们再看冲突的例子。

一个文件内容是1,远程文件,A客户,B客户,3地是一样的。

A修改为2提交。 A2 远程2, A和远程一致。

B修改为3,不论是提交和更新 都会提示冲突。

因为修改前为版本1,远程为版本2,工作版本和另外都不一样,本意是升级版本2,但工作工作版本和远程版本不一样,必须选择其一,或者解决冲突合并。

所谓的解决冲突,不是另外备份工作版本,然后删除冲突文件,再然后更新远程到本地,然后再用备份的工作版本提交到远程。

又或者,手工对比版本2和工作版本,不是这样的,但已经很接近了。

 

所谓的解决冲突是有套程序已经完成一切准备工作,你选择保留哪一部分就好,并确定冲突已解决

posted on 2024-05-25 00:57  webkb  阅读(71)  评论(0编辑  收藏  举报