博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
你该怎样用svn才能避免冲突? (内附逻辑图和详细解释)
阅读量:4140 次
发布时间:2019-05-25

本文共 699 字,大约阅读时间需要 2 分钟。

       很多年前, 我在某公司实习, 做手机应用开发,  大家更新提交代码的模式如下:

       这种模式有一个缺点, 那就是容易冲突。 最开始, 三个程序员user1, user2, user3从配置库拿到了最新的代码, 如果user1改动, 然后提交,  而user2或者user3又在本地改动, 然后提交, 那么就很容易引入冲突(当然不是一定)。 实习那会儿, 几乎每天都有冲突的事情发生, 有时候覆盖了别人的代码, 有时候自己的代码被干掉, 有时候, 配置库上的代码甚至不能工作, 这样不好啊。

 

       我们看看改进措施:

        如上图, user1搞两个文件夹, 在这里, 我们用D盘和E盘表示。 首先user1进行步骤1和4, 这样D盘和E盘中就存放了配置库中最新的代码, 然后user1在E盘中进行开发, 写程序, 改呀改。 程序完成了, 就准备提交了。 这个时候, user2或者user3很可能早就更新了配置库, 所以user1在提交代码前, 需要经历步骤2, 把最新代码拉下来, 由于user1并没有改动过D盘中的代码, 所以在拉下来的时候, 永远不会存在冲突。 这个时候D盘中的代码和配置库的代码完全一致, 此时, user1利用BeyondCompare将E盘中的代码合入到D盘中, 这就是步骤3。 然后, user1完成步骤2提交即可, 本次提交代码算是成功了。 接着进行第二次开发, 为了保证E盘是最新代码, 我们仍要进行一下4步骤, 这就是基本的模式。

 

        当然, 如果你做嵌入式开发, 很可能要在服务器上进行编译,那么, 建议按照如下图进行操作, 多的我就不讲了, 以下图结束本文:

 

 

            好了, 睡觉, 晚安。

          

 

你可能感兴趣的文章
基于P5.js的“绘画系统”
查看>>
《达芬奇的人生密码》观后感
查看>>
论文翻译:《一个包容性设计的具体例子:聋人导向可访问性》
查看>>
基于“分形”编写的交互应用
查看>>
《融入动画技术的交互应用》主题博文推荐
查看>>
链睿和家乐福合作推出下一代零售业隐私保护技术
查看>>
Unifrax宣布新建SiFAB™生产线
查看>>
艾默生纪念谷轮™在空调和制冷领域的百年创新成就
查看>>
NEXO代币持有者获得20,428,359.89美元股息
查看>>
Piper Sandler为EverArc收购Perimeter Solutions提供咨询服务
查看>>
RMRK筹集600万美元,用于在Polkadot上建立先进的NFT系统标准
查看>>
JavaSE_day14 集合中的Map集合_键值映射关系
查看>>
异常 Java学习Day_15
查看>>
Mysql初始化的命令
查看>>
MySQL关键字的些许问题
查看>>
浅谈HTML
查看>>
css基础
查看>>
Servlet进阶和JSP基础
查看>>
servlet中的cookie和session
查看>>
过滤器及JSP九大隐式对象
查看>>