SVN服务器端与Eclipse中的客户端配置详解(window xp)
序:以前配置过CVS版本服务器,SVN也只是在Eclipse中能够的到服务器的链接。今天折腾了一下午的SVN服务器配置,网上的资料东一榔头西一棒子的,感觉都不很详尽,有必要写一篇详尽的文章,来介绍一下Eclipse中如何获取SVN服务器端的版本数据,来进行版本控制。
1 下载文件
1.服务器端subversion,我选择svn-1.4.4-setup.exe
2.客户端TortoiseSVN,我选择TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi
2 安装步骤
以前的svnserve要想成为windows服务,必须依赖于svnservice或其他工具。从Subversion1.4开始,Subversion本身就集成Windows服务的工具。
2.1.1 安装svnservice
在Windows NT中(包括Windows XP, Windows 2000, Windows 2003 Server)本身包含了一个安装服务的工具,叫做"Service Control",也就是sc.exe。
例如我的Subversion安装在"D:\Subversion",版本库在"D:\svnroot",而我希望对应的Subversion服务名为svnservice,安装这个svn服务的命令就可以这样写:
开始=》运行=》cmd 调出命令行,在任意目录结构下键入:
sc create svnservice
binpath= "D:\Subversion\bin\svnserve.exe --service -r D:\svnroot"
displayname= "SVNService"
depend= Tcpip
请注意,因为便于察看,上面的命令分为多行,但在实际执行时应该在一行里。另外,在以前启动svnserve时会使用"-d"选项,也就是守护进程模式,在这里不能使用,会导致服务无法启动。同样,"-i"和"-t"选项也不能使用。
在命令行窗口执行完这个命令之后,服务还没有启动,你可以继续运行"net start svnservice"启动这个服务,然后使用"net stop svnservice"停止服务。
另外还有两点需要小心处理。首先,如果路径中包括空格,一定要用“\”处理“"”号,例如上面的例子中如果svnserve.exe在“c:\ program files\subversion\”中,则命令应该写为“binpath= "\"c:\program files\subversion\bin\svnserve.exe\"”(“”中的内容),整个命令如下,红色部分是改变部分:
sc create svnservice binpath= "\"c:\program files\Subversion\bin\svnserve.exe\" --service -r d:\svnroot" displayname= "SVNService" depend= Tcpip start= auto
其次,sc对选项的格式还有要求,例如“depend= Tcpip”不能写为“depend = Tcpip”或“depend=Tcpip”,也就是“=”前不能有空各,而后面必须有空格。
2.1.2 删除服务
如果服务安装的有问题,你可能需要删除服务。要删除前面添加的服务,只需要运行"sc delete svnservice","svnservice"就是我们创建服务时使用的名字。
2.1.3 配置服务为自启动
默认情况下安装的服务不会随Windows的启动而启动,为了使svn服务能够随Windows启动而启动,需要修改一下"sc create"命令(首先要删除),增加"start= auto"选项:
1)创建服务:
sc create svnservice
binpath= "D:\Subversion\bin\svnserve.exe --service -r D:\svnroot"
displayname= "SVNService"
depend= Tcpip
start= auto
2)启动服务:
net start svnservice
当然你也可以使用图形化的工具修改服务的属性,你可以在“开始->运行...”中执行"services.msc",然后在界面中修改。
2.2 创建电子仓库
创建电子仓库,有两种方法
方法一:用TortoiseSVN创建电子仓库
TortoiseSVN客户端不是独立的程序,而是与Windows Explorer进行了外壳集成,其操作通过环境菜单来完成.
如上图所示:
1.创建名为SVNroot的空目录
2.在目录上,或在在目录内空白处点右键,从TortoiseSVN菜单中选择Create repository here...(在此处创建电子仓库),在选择电子仓库类型后,将会自动生成一些文件和目录.这样就完成了电子仓库的创建,你可以用同样的方法创建多个电子仓库。
注:电子仓库类型有两种可供选择,选择任意一种即可:
1.Native filesystem(FSFS) 本地文件系统
2.Berkely database(BDB) Berkely数据库
不同的选择只会影响电子仓库的数据存取格式,默认选择为:Native filesystem
方法二:命令行
开始=》运行=》cmd 调出命令行,在任意目录结构下键入如下命令来创建电子仓库:
svnadmin create e:\SVNRoot
2.3 配置用户和权限
2.3.1 修改svnserve.conf文件
来到E:\ SVNRoot \conf目录,修改svnserve.conf(如图):
# [general]
# password-db = passwd
改为:
[general]
password-db = passwd
如下图所示
2.3.2 修改passwd文件
然后修改同目录的passwd文件,去掉下面三行的注释:
# [users]
# harry = harryssecret
# sally = sallyssecret
最后变成:
[users]
harry = harryssecret
sally = sallyssecret
2.4 在eclipse中客户端的配置
以上,SVN服务器端已经配置完成,下面在SVN示图中新建SVN资源库,其中URL地址填写服务的地址,如:svn://192.168.0.5。