很早以前用过VSS的人都知道,相比之下SVN的确是个好东东。他以副本式的版本管理模式很好的解决了VSS单数据源下的签入签出混乱问题。但是最近发现很多人都不会装SVN,经理在这里写个博客跟大家分享一下。 环境: Win7系统 Myeclipse 8.5GA JDK1.6 一、准备工作 首先,当然是下载软件安装包。(经理这里以svn1.6为例)这里需要2个安装程序和1个解压包。 Setup-Subversion-1.6.6.msi这个是SVN服务器。 (你可以在这里 http://subversion.tigris.org 下载到最新版本) TortoiseSVN-1.6.10.19898-win32-svn-1.6.12.msi是SVN 版本控制系统的一个免费开源客户端。 (可以在这里下载 http://tortoisesvn.net/downloads ) site-1.6.12.zip是Myeclipse的插件包。 (可以在这里下载 subclipse.tigris.org) 二、安装svn服务器 首先安装svn服务器(也就是Setup-Subversion-1.6.6.msi这个),按照常规安装就OK了。然后把tortoise也安装起来(也就是TortoiseSVN-1.6.10.19898-win32-svn-1.6.12.msi这个)。 在安装tortoise的时候会提示重启,这里最好重启下。 这是经理的安装目录 Setup-Subversion-1.6.6.msi --> Subversion目录 TortoiseSVN-1.6.10.19898-win32-svn-1.6.12.msi --> TortoiseSVN目录 svnroot目录是什么呢?接着往下看 三、建立SVN资源库(Repository) svnroot是经理建立的svn资源库根目录,然后在这个目录里建立了一个名为repos的目录。(这个目录是经理打算做svn资源库的目录) 然后在这个目录点右键->TortoiseSVN->Create repository here 当看到被建立的repos目录中多了很多文件夹后证明资源库创建成功。 在网上也看到有用cmd命令来创建的,如svnadmin create D:\svn\repository 四、配置用户和权限 打开刚刚建立的资源库文件夹(repos),里面有一个名为conf的文件夹,这个文件夹里都是svn的配置信息。首先打开svnserve.conf文件 这里行前凡是有#的都等于是被注释忽略了, 你可以把#去掉让那一行生效, 或者自己新添加行。经理对这个文件主要修改3处 把" #anon-access = read"改为"anon-access = none" (他表示没有经过验证的用户无任何权限,之前的意思是没经过验证的用户可以进行读操作。经理强烈建议该成none,不然别人没有验证的人都可以看到项目文件) 把" #auth-access = write"去掉#为"auth-access = write" (通过验证的用户有写操作,写操作是包含读操作的) 把" #password-db = passwd"去掉#为"password-db = passwd" (密码数据存放到passwd文件中) 打开passwd文件 设置一个用户名如 manager=jingli 还有一个文件authz 这个文件主要是用来针对不同的目录给用户分配不同的权限的。 如: [groups] team1 = manager,staff 表示划定一个小组,组员有manager和staff用户 [repository:/baz/fuz] @team1= rw * = r 表示team1这个组对资源有读写权限,资源对所有人有读权限 [/foo/bar] manager = rw * =r 也可以像这样对个人设置权限,manager有读写权限,该资源对所有人有读权限 这些可以根据个人需要修改 五、运行svn服务器 在安装的Subversion目录下有个bin目录里svnserve.exe,我们直接运行这个文件是无效的。需要在控制台来启动他。直接在cmd命令中输入svnserve -d -r D:\SVN\svnroot这样服务就启动了(注意,这里指定的是svnroot文件即资源根目录,而不是资源目录repos)。当然你关闭dos窗口的时候svn服务也就关闭了。svn的所有操作都需要在这个服务器启动的基础上进行。但是一直开着这个dos命令窗口很不爽,所以经理在这里写个程序让他开机自动启动。 首先我们需要为svnserve创建一个系统服务。 以经理本机的安装目录为例,在cmd命令行输入
binpath指svnserve.exe的路径 (注意:如果你的路径里有空格记得要在binpath的头尾用转义字符/"把整个个binpath框起来,D:\SVN\svnroot指svn资源库根目录) displayname指服务名称 depend指协议是tcpid start指开机自动启动 注意:以上的=后面的一个空格千万不要丢了 然后我们打开服务可以看到我们的服务已经是自动启动了 六、安装subeclipse插件 打开之前下载的site-1.6.12.zip文件可以看到里面有features、plugins两个文件夹 用之前我讲过的Myeclipse安装插件的方法安装就可以了 参考: (http://www.blogjava.net/zhangyuan/archive/2010/07/28/327371.html) 在这里要注意一点 安装插件时要去掉features中的org.tigris.subversion.subclipse.mylyn_3.0.0.jar文件 去掉plugins中的org.tigris.subversion.subclipse.core_1.6.8.jar和org.tigris.subversion.subclipse.mylyn_3.0.0.jar 经理用Myeclipse8.5配这一套svn如果不删这些文件的话,启动Myeclipse时会报错 这样SVN就搭建好了..