您的位置:首页 > 其它

你该怎样用svn才能避免冲突? (内附逻辑图和详细解释)

2014-05-08 00:19 330 查看
       很多年前, 我在某公司实习, 做手机应用开发,  大家更新提交代码的模式如下:


       这种模式有一个缺点, 那就是容易冲突。 最开始, 三个程序员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步骤, 这就是基本的模式。

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



            好了, 睡觉, 晚安。

          
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: