https://blog.csdn.net/xgf415/article/details/75196714

SVN 冲突包括

  • 内容冲突:当两名(或更多)开发人员修改了同一个文件中相邻或相同的行时就会发生文件冲突。
  • 树冲突:当一名开发人员移动、重命名、删除一个文件或文件夹,而另一名开发人员也对它们进行了移动、重命名、删除或者仅仅是修改,在更新时就会发生树冲突。

SVN 的基本使用和内容冲突的解决方法可以参考这篇博客TortoiseSVN 和 VisualSVN Server 使用教程

树冲突类型及解决方法

1. 本地删除,外部更改

  1. A(外部) 修改文件并将其提交至版本库中。
  2. B (本地)同时删除了文件。

B 更新时就会发生树冲突,该文件被标记为冲突。

B 的解决方法有:

  • 放弃 A (外部)更改:也就是删除这个文件----直接标记冲突为已解决。
  • 放弃 B (本地)删除:选择取消,右键 TortoiseSVN --> SVN 还原,撤销删除操作。

2. 本地改名,外部更改

  1. A(外部) 修改文件,并将其提交至版本库中。
  2. B (本地)同时将文件改名。

B 更新时, 该文件被标记为树冲突。
B 的解决方法有:

  • 合并 A (外部)更改到改名后的文件中去:直接选合并修改(见下图)----> 标记冲突为已解决,然后提交。
  • 放弃 A 的更改:改名后的文件不包括 A 的更改内容 ----> 直接标记冲突为已解决,然后提交,
  • 放弃 B 的改名:选择取消,TortoiseSVN --> SVN 还原,撤销改名操作。

3. 本地更改,外部删除

  1. A(外部)删除了文件,并提交到了版本库;
  2. B(本地)同时对该文件进行了修改。

B 更新时,该文件被标记为树冲突。

B 的解决方法有:

  • 放弃 A(外部)的删除:不删除文件,同时保留本地内容修改---->直接选保留本地文件,然后提交;
  • 放弃 B(本地)的更改:直接选删除此文件。

4. 本地更改,外部改名

  1. A(外部)将文件改名,并提交到了版本库;
  2. B(本地)修改了文件内容。

更新时,B 的该文件被标记为树冲突

B 的解决方法有:

  • 合并更改到改名后的文件:选择保留本地文件,手动将更改内容移植到改名后的文件,撤销增加原文件,然后提交。
  • 放弃 A(外部)改名:选择保留本地文件,然后删除改名后的文件,然后提交。
  • 放弃 B(本地)更改:文件改名,内容不变-->直接选删除此文件。

合并本地更改到改名后的文件中,手动合并如下:

a.先后选择原文件和改名后的文件,加入对比。

b.根据两个文件的差异,把原文件的内容更改移植到改名后的文件中,然后保存。

5. 本地删除,外部改名

  1. A(外部)将文件改名,然后提交到版本库;
  2. B(本地)将文件删除。

更新时,B 的该文件将发生树冲突。

B 的解决方法有:

  • 接受 A 的改名:标记冲突已解决;
  • 坚持删除文件:把改名后的文件删除,然后提交。

6. 本地改名,外部删除

  1. A(外部)将文件删除,然后提交到版本库;
  2. B(本地)将文件改名。

更新时,B 的该文件将发生树冲突。

B 的解决方法有:

  • 接受 A 的删除:标记冲突已解决,然后撤销增加改名后的文件;
  • 坚持改名:标记冲突为已解决,然后提交。

7. 本地改名,外部改名

  1. A(外部)将文件改名,并提交到版本库;
  2. B(本地)将同文件改名。

更新时,B 的该文件将发生树冲突,

B 的解决方法有:

  • 用 A 的名字:标记冲突为已解决,撤销增加本地改名后的文件;
  • 用 B 的名字:标记冲突为已解决,删除 A 改名后的文件,然后提交。

分支合并冲突

对于分支和主干合并时发生的冲突,因为 SVN 的分支用的很少。。。。所有这里也不介绍了。有问题的话可以参考 SVN 的帮助文档(其实本博客很多内容都是上面借鉴(chaoxi)来的)

SVN 树冲突解决详解的更多相关文章

  1. SVN版本冲突解决详解

    SVN版本冲突解决详解 分类: SVN(SubVersion)2009-11-23 15:45 27014人阅读 评论(12) 收藏 举报 svnsubversion服务器文档工作c 版本冲突原因: ...

  2. svn冲突问题详解 SVN版本冲突解决详解

    svn冲突问题详解 SVN版本冲突解决详解 (摘自西西软件园,原文链接http://www.cr173.com/html/46224_1.html) 解决版本冲突的命令.在冲突解决之后,需要使用svn ...

  3. [转]SVN版本冲突解决详解

    原文地址:http://blog.csdn.net/windone0109/article/details/4857044 版权声明:本文为博主原创文章,未经博主允许不得转载. 版本冲突原因: 假设A ...

  4. 【转】svn冲突问题详解 SVN版本冲突解决详解

    (摘自西西软件园,原文链接http://www.cr173.com/html/46224_1.html) 解决版本冲突的命令.在冲突解决之后,需要使用svnresolved来告诉subversion冲 ...

  5. SVN冲突解决详解

    在: http://blog.csdn.net/windone0109/article/details/4857044

  6. Eclipse中的SVN的冲突解决方案详解

    版本冲突原因: 假设A.B两个用户都在版本号为100的时候,更新了kingtuns.txt这个文件,A用户在修改完成之后提交kingtuns.txt到服务器,这个时候提交成功,这个时候kingtuns ...

  7. SVN 树冲突的解决方法(Ubuntu 环境)

    今天在 服务器上(Ubuntu) svn up 更新的时候,出现了 SVN 树冲突 root@futongdai:~# cd /home/wwwroot/newcrm.ofim.com/ root@f ...

  8. iOS开发——开发实战篇&版本控制SVN和Git使用详解

     版本控制SVN和Git使用详解     公司的实际开发中,在天朝使用较多的还是SVN,因为SVN是集中式的,在天朝上班你们都懂的!     -----------------svn--------- ...

  9. AVL树平衡旋转详解

    AVL树平衡旋转详解 概述 AVL树又叫做平衡二叉树.前言部分我也有说到,AVL树的前提是二叉排序树(BST或叫做二叉查找树).由于在生成BST树的过程中可能会出现线型树结构,比如插入的顺序是:1, ...

随机推荐

  1. QT UI 线程为什么卡死?

    我的工程是由三个线程处理不同任务构成的,其中UI用于显示,还有数据处理和数据接收发送线程. 在运行的过程中发现由于数据处理线程不及时,超过了设定的100ms,导致UI卡死,几个周期后又恢复,接着又卡死 ...

  2. 阿里云发布Apsara SA系列混合云存储阵列

    3月21日,2019北京阿里云峰会上,阿里云正式发布Apsara SA系列混合云存储阵列,融合IP SAN,FC SAN,NAS和OSS对象存储协议于一体,同时实现了本地数据中心架构和公共云存储的无缝 ...

  3. Oracle使用——Oracle表字段的增加、删除、修改和重命名

    增加字段 语法 alter table tablename add (column datatype [default value][null/not null]); 说明:alter table 表 ...

  4. Chrome的使用技巧总结

    设置一>” 首先设置打开特定的网页 设置--> “下载位置” (Ctrl+H),快速查找自己浏览器访问网页的历史记录 (Ctrl+D),将目前认为比较好的网页保存. ctrl+t  新建标 ...

  5. framework7日期插件使用

    1.引入框架文件 <link rel="stylesheet" href="framework7.ios.min.css"> <link re ...

  6. 类的重载case2

    /*功能:类的成员属性和成员方法*/ public class Person{    public static void main(String args[]){        TruePerson ...

  7. F4NNIU 的 Docker 学习资料整理

    F4NNIU 的 Docker 学习资料整理 Docker 介绍 以下来自 Wikipedia Docker是一个开放源代码软件项目,让应用程序部署在软件货柜下的工作可以自动化进行,借此在Linux操 ...

  8. 跳出手掌心--如何立即触发UIButton边界事件

    http://www.cocoachina.com/ios/20150611/12082.html 最近在使用UIButton的过程中遇到一个问题,我想要获得手指拖动button并离开button边界 ...

  9. 2019-8-31-dotnet-core-输出调试信息到-DebugView-软件

    title author date CreateTime categories dotnet core 输出调试信息到 DebugView 软件 lindexi 2019-08-31 16:55:58 ...

  10. qt 自定义窗口绘制正弦曲线

    circlewidget.h #ifndef CIRCLAWIDGET_H #define CIRCLAWIDGET_H #include <QFrame> #include<QVe ...