【版本控制工具】svn服务器、客户端安装配置及eclipse的svn检出-阿里云开发者社区

开发者社区> 开发与运维> 正文

【版本控制工具】svn服务器、客户端安装配置及eclipse的svn检出

简介:
如何快速建立Subversion服务器,并且在项目中使用起来,这是大家最关心的问题,与CVS相比,Subversion有更多的选择,也更加的容易,几个命令就可以建立一套服务器环境,可以使用起来,这里配套有动画教程。 
本文是使用Subversion最快速的教程,在最短的时间里帮助您建立起一套可用的服务器环境,只需略加调整就可以应用到实际项目当中。 
本教程分为以下几个部门,不仅仅是快速入门,最后我们还有一些高级功能的说明,为了说明简单,教程是在windows下使用的方式,以方便资源有限的项目使用,对于UNIX环境下,区别并不大。

1,软件下载

下载Subversion服务器程序。

官方网站的下载二进制安装文件,来到二进制包下载部分,找到 Windows NT, 2000, XP and 2003部分,然后选择" this same directory ",这样我们可以看到许多下载的内容,目前可以下载 svn-1.4.6-setup.exe 。

下载Subversion的Windows客户端TortoiseSVN。

TortoiseSVN是扩展Windows Shell的一套工具,可以看作Windows资源管理器的插件,安装之后Windows就可以识别Subversion的工作目录。 
官方网站是TortoiseSVN ,下载方式和前面的svn服务器类似,在Download页面的我们可以选择下载的版本,目前的最高稳定版本的安装文件为TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi。同时在此下载页的下面有语言包下载。

2,服务器和客户端安装

服务器安装,直接运行svn-1.4.6-setup.exe ,根据提示安装即可,这样我们就有了一套服务器可以运行的环境。
安装TortoiseSVN,同样直接运行TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi按照提示安装即可,不过最后完成后会提示是否重启,其实重启只是使svn工作拷贝在windows中的特殊样式生效,与所有的实际功能无关,这里为了立刻看到好的效果,还是重新启动机器。
 

3,建立版本库(Repository)

运行Subversion服务器需要首先要建立一个版本库(Repository),可以看作服务器上存放数据的数据库,在安装了Subversion服务器之后,可以直接运行,如:
(点击“开始”-“运行”,在里面输入如下命令) 
svnadmin create F:\svn_repository_server
就会在目录F:\svn_repository_server下创建一个版本库。
 
我们也可以使用TortoiseSVN图形化的完成这一步: 
在目录F:\svn_repository_server下"右键->TortoiseSVN->Create Repository here...“(安装了中文包的话,就是"右键->TortoiseSVN->在此创建版本库"), 然后可以选择版本库模式, 这里使用默认即可, 然后就创建了一系列目录和文件。


4,配置用户和权限

来到F:\svn_repository_server\conf目录,修改svnserve.conf: 
[general] 
# password-db = passwd 
改为: 
[general] 
password-db = passwd
 
然后修改同目录的passwd文件,去掉下面三行的注释: 
#[users] 
# harry = harryssecret 
# sally = sallyssecret 
最后变成:
#等号左边是用户,右边是密码
[users]
xudayu=xudayu
 

5,运行独立服务器

在任意目录下运行:

svnserve -d -r F:\svn_repository_server
 
我们的服务器程序就已经启动了。注意不要关闭命令行窗口,关闭窗口也会把svnserve停止。
 
每次都要手动启动,还不能关闭窗口,很麻烦,所以我们将其创建为windows系统服务。 
第一方法:
打开一个DOS命令窗口,执行如下命令:
 
sc create svnserve binPath= "\"C:\Program Files\Subversion\bin\svnserve.exe\" --service --root
F:\svn_repository_server" displayname= "Subversion Repository" depend= Tcpip start= auto   
 
其中:
sc是windows自带的服务配置程序,
参数binPath表示svnserve可执行文件的安装路径,由于路径中的"Program Files"带有空格,因此整个路径需要用双引号引起来。而双引号本身是个特殊字符,需要进行转移,因此在路径前后的两个双引号都需要写成\",
--service参数表示以windows服务的形式运行,
--root指明svn repository的位置,
service参数与root参数都作为binPath的一部分,因此与svnserve.exe的路径一起被包含在一对双引号当中,而这对双引号不需要进行转义。
displayname表示在windows服务列表中显示的名字, depend =Tcpip 表示svnserve服务的运行需要tcpip服务,start=auto表示开机后自动运行。
 
若要卸载svn服务,则执行 sc delete svnserve 即可。
 
第二种方法:
[url]http://www.lw-works.com/svnservice[/url]网站下载Svnservice Monitor,然后安装。接下来的设置就是选择版本库的路径,填写主机和端口。然后点击apply就行了。


6,初始化导入

来到我们想要导入的项目根目录,F:\workspace\eclipse\struts2:

右键->TortoiseSVN->Import... (安装了中文包的就是:右键->TortoiseSVN->导入)
URL of repository(版本库URL)输入“svn://localhost/struts2/demo” 
ok
这时候需要输入用户名和密码,我的自然就是xudayu,xudayu了。

完成之后目录没有任何变化,如果没有报错,数据就已经全部导入到了我们刚才定义的版本库中。
需要注意的是,这一步操作可以完全在另一台安装了TortoiseSVN的主机上进行。例如运行svnserve的主机的IP是133.96.121.22,则URL部分输入的内容就是“svn://133.96.121.22/struts2/demo”。


7,eclipse使用svn导入工程

我的eclipse是3.3.1.1,首先的工作是要安装svn,我们到官网[url]http://subversion.tigris.org/[/url]去下载svn的eclipse插件。点击左下角的“Subversion and IDEs”中的eclipse。
 
这里最新的版本是1.2.4,支持Eclipse 3.2/Callisto and 3.3/Europa。可以网络安装,也可以自己下载压缩包安装。我选择的下载压缩包Zipped downloads: [url]http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240[/url],比网络安装的要快。
 
然后打开eclipse:
 
选择第二项,下一步;
 
选择“New Archived Site”,然后在对话框里选择刚才下载的zip包。如果你要是用网络安装,那么就选择"New Remote Site",然后输入名字和svn插件的地址。就在刚才上面那个zip包下载地址的上面。
 
接下来就是Finish,回出现一个插件选择安装的对话框。(因为我安装过了,所以没有截图)我们选择它,这时候它报出一个错误,说需要Mylyn2.0及以上版本的支持。我的eclipse3.3.1.1没带这个,所以要安装,同样我选择下载zip包安装,在[url]http://www.eclipse.org/mylyn/downloads/[/url]选择3.3支持。然后安装方法与svn插件相同。不过要先装我们刚才下载的Mylyn,再装svn。
 
然后会重启eclipse
 
选择svn检出,下一步
 
 
一般的,如果是第一次,需要你创建一个新的资源位置,因为我已经创建了,所以图中有两个资源url:
 
填入我们上面(将文件导入资源库时)填写的url,svn://localhost/struts2/demo,下一步:
 
选择url,next:
 
默认,next:
 
默认,finish
 
完成后我们就看见了如下图的样子。(有个小红叉叉,不知道为什么,不过不影响使用。另外,如果你是按照上面的做的,下面图里的工程名称应该是struts2[struts2/demo]。我这个是因为自己改了资源路径,^_^)
 
好了,svn建资源库,导入资源,eclipse的svn检出就完成了。我也是第一次弄,不好别扔砖头哈。



本文转自xudayu 51CTO博客,原文链接:http://blog.51cto.com/xudayu/75614,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章