SVN版本控制器更新文件数据,即解决冲突的原理是什么?

有以下几个问题:
1.我检出一份副本到本地,修改了几个文件,然后我提交到SVN服务器中,此时服务器是如何更新有关的数据的呢?是不是把原来旧的文件数据删除了,保存最新提交的数据呢?

2. 假设我修改了 Person.java 文件,里面我已经改的面目全非了,在提交之前,也有个人修改了 Person.java 文件,他比我先一步完成提交,接着我再提交,那么 SVN 是怎么解决的?

3. 上个问题中,另外一个人提交了,我先更新下来,此时SVN 又是如何确保我本地的 Person.java 文件中既保留了他人刚修改过的代码,又保留我自己修改的代码的呢?如果我们两个人都修改了同一个方法,怎么搞?或者说他把方法名都改了,我现在又更新了,那怎么玩?

求大神分享,万分感谢!!!!!!

SVN
subversion
版本控制
2021-07-29 18:54:03
浏览
已于2021-7-29 18:57:51修改
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
爱吃土豆丝的打工人
1

这种方式叫替换,你只是看着它是删除了,但是以前的记录都会存在。如果你要退回到之前的版本或者哪个版本  是可以退回的。只是SVN会一直展示的是最新的代码,为了同步其他开发者做修改。

这种情况,如果别人提交了,你没有做更新去提交的话是提交不上的,SVN会先让你做更新操作。

你更新下来的代码中,如果你喝其他人都修改了同一个地方,在编译器中会出现两个方法,但是会提示你,需要使用自己的还是使用别人的,这就是合并操作。建议做合并操作的时候,先找修改过同一个方法的这个人,它的这个方法跟你的这个方法又何差异,对比后谁的更优保留谁的。SVN服务器不是去看你的方法名,它直接对应的是整篇代码的第几行到第几行。  所以合并操作的时候要思考慎重。

分享
微博
QQ
微信
回复1
2021-07-30 08:52:52
相关问题
什么控制器controller
759浏览 • 1回复 待解决
HarmonyOS List组件数据更新错误
170浏览 • 0回复 待解决
PolarDB 备份恢复原理是什么
2770浏览 • 1回复 待解决
性能优化中组件复用原理是什么
1920浏览 • 1回复 待解决
LazyForEach懒加载原理是什么
2099浏览 • 1回复 待解决
OceanBase 复制表原理是什么
4144浏览 • 1回复 待解决
HarmonyOS 提出来件数据不会更新
248浏览 • 1回复 待解决
HarmonyOS video空间自定义控制器
219浏览 • 1回复 待解决
OceanBase 多租户原理是什么
4274浏览 • 1回复 待解决
xml文件数据解析 ,都有哪些步骤?
694浏览 • 1回复 待解决
svn客户端和svn服务端版本不同。
2232浏览 • 1回复 待解决