svn 配置及冲突解决
1、服务器 subversion
1) 安装server
sudo apt-get install subversion
2) 建立svn repository
mkdir ~/svn-repo;
mkdir ~/svn-repo/test
svnadmin create ~/svn-repo/test
3) 配置 svnserver.conf
svnserve.conf配置:
[general]
anon-access = none
auth-access = write
password-db = pwdfile
4) pwdfile 设置用户名和密码
[users]
username = password
5)启动svn
svnserve -d -r ~/svn-repo
6)eclipse svn client
subclipse
svn://192.168.182.128:3690 ,输入用户名和密码
7) 新建远程文件夹
code/branch/testsvn-dev
code/trunk/testsvn
8)作为新项目导出,java project
9)新建Test.java,并且main函数打印分别为:
System.out.println("this is dev project");
10)使用TortoiseSVN 在资源管理器里 repo-browse testsvn-dev 项目(已经导出)
11) 使用TortoiseSVN 将项目复制一份到trunk/testsvn,这样两者就有了共同的祖先。
copy to: svn://192.168.182.128/test/code/trunk/testsvn
System.out.println("this is dev project");
12)使用eclipse将trunk下的testsvn项目导出(不用做为新项目)
13 ) TortoiseSVN 在资源管理器里找到.project 文件不作为比较同步的文件。
14 ) 编辑两个项目文件,使得分支到主干,部分文件为冲突,部分文件为更新。
15)两个项目分别与自己的服务器保持好同步。
16)主干合并分支代码(这一步非常重要,有时候出现冲突了并不是代码冲突,再次提交再次合并就好了)

(这一步的效果是不冲突的合并到了主干本地目录,冲突的保持主干本地的更新,方便beyondcompare比较)
17)主干提交不冲突的文件
18)分支使用beyond compare 合并好最终代码并且提交。
19)主干再次合并分支代码,此时选择

20)主干提交代码
21)主干再合并一次,验证问题解决。
===========================================================================================

说明如下内容:
a)Merged 对应主干上的内容,也就是目的地。
b)Theirs 对应分支上的内容,也就是源头。
c)ancesor是他们共同的祖先。
17)在merge results视图里选择冲突的文件Test,右键选择team,然后选择“标记为已解决",同步testsvn项目,上传新的修改后的文件

关闭merge窗口的时候出现如下提示,做如下选择

<<<<<<< .working 代表主干上的, ==== 代表源

浙公网安备 33010602011771号