SVN

一、创建版本库

1.创建版本库

svnadmin create D:DevRepositorySubversionERP

2.创建成功后产生目录

二、使用命令行模式访问SVN服务器

   1.  检出

检出命令会在这一目录下创建一个隐藏目录.svn,用来保存与服务器交互的重要信息,其中包括从服务器端取回的最新版本信息、文件状态、更新时间等。

 

2. 提交

3.更新

4.回滚

三、日志

 四、eclispe使用svn

 1、因为原始的svn使用起来实在是太麻烦了,所以这次就更改为使用VisualSVNServer来进行操作,界面如下

 

  比如目前主干是2.0版本,分支可能存放的是1.1版本,因为第一个版本的bug还没修完,而第二个还没测试完毕。所以1.0的暂时放在分支,等2.0时机成熟后进行合并。

主干分离出分支----》分支合并主干的修改-----分支修改完毕将修改部分集成回主干

2、eclispe进行svn的保存。

 team--->sharprject

maven下的.settings和.project要进行忽略更新

Eclipse与maven插件的结合为我们快速搭建开发环境提供了便捷条件,然而maven编译出来的class文件、配置文件和打包文件实际上都不需要进行版本控制,

Team中每个人的开发环境可能不太一样,将.settings目录和.project等文件同步到svn甚至还会引起冲突和不便,因此最好将它们忽略,保持一个干净的svn环境。

最常见的就是用maven管理项目中的target目录

Window–>Preferences–>Team–>Ignored Resource–>Add Pattern

输入

*/target/*



 忽略maven的个人设置后进行提交

 添加默认忽略资源.settings目录和.project和.classpath

 聚合工程因为聚合在一起所以只需要将父模块上传就可以了。

去除target

commmit 完毕到svn

对于svn上面import进来的maven项目转化为maven

 冲突解决经验总结

1、原则性问题:

1)每天早上及时更新svn,team--->资源库同步(先初步修改)----->更新(或许会有冲突,冲突就修改自己修改的部分,其余依照服务器来做,修改完毕后标记为冲突解决),

  只有更新后的冲突才能标记为已解决。

2)记得及时更新,降低代码的冲突修改复杂度。

3)下班前提交代码到svn上面去。

svn冲突解决方法:

在svn更新文件时会产生有冲突的文件,一般有两种解决办法:

1、更新文件之前直接查看对比不同之处,手动调整资源库中的文件内容和本地的文件内容进行合并;

2、直接更新,更新之后打开该文件会有这样的标识符<<<<<<< .mine,=======,>>>>>>>.r3541,这代表什么意思呢?

<<<<<<< .mine

这里的内容呢,就是你本地的内容,显而易见mine就是自己的意思嘛!

=======

而这里的内容就是资源库中的内容,这是svn更新之时自动合并产生的结果;

>>>>>>>.r3541

(这里的.r3541代表是版本号)

并且在更新完的时候在该文件的同目录下会产生三个文件:R.java.mine,R.java.r3368,R.java.r3439

R.java.mine是你自己修改后准备提交的那个版本;
R.java.r3368是你们的初始版本;
R.java.r3439是别人赶在你之前提交的那个版本;

此时呢,就可以再次手动合并冲突地方的内容了;
原文地址:https://www.cnblogs.com/limingxian537423/p/7552606.html