SVN安装及配置 SVN注册windows服务

1、安装验证是否安装成功 
   
安装完成svn1.4.0版本,和客户端工具TortoiseSVN(相当于windows资源管理器的一个插件),之后进入dos命令提示窗口下输入svn help(在任何目录下都可以),查看svn是否看装成功。如果有svndos命令介绍说明安装成功。

2、创建版本库  
  
安装成功之后,要创建版本库(版本库可以看作是服务器上集中存放和管理数据的地方)。 
  
可在命令提示符窗口下输入命令 svnadmin create D:\svn\repository , 就是在目录D:\svn\repository下创建一个版本库。如果在命令行中不识别svnadmin命令,可以查看系统环境变量path中有无subversion/bin的条目,没有就手动加上。我们也可以使用工具TortoiseSVN创建版本库。先建立空目录 D:\svn\repository,注意一定是要空的。然后在 Repository 文件夹上右键->TortoiseSVN->Create Repository here...”,就创建了一系列文件夹和文件。 
说明:一个服务器上建一个版本库就可以了,不同的项目可以同时用该版本库。 
3
、配置服务器 
  
打开D:\svndemo\repository\conf\svnserve.conf 
  
将以下三个行的注释#去掉 
     anon-access=none        //
未验证用户无任何权限 
     auth-access=write      //
已验证用户给予写权限 
     password-db=passwd    //
密码数据存放到passwd文件中 

authz-db = authz          //权限验证,即管理员和普通用户
realm = svnhome
(注意,以上面为例子,则为repository 

然后修改同目录的passwd文件,增加和修改帐号信息。 
说明:anon-access=none这条必须显示写出来,否则会有一个默认权限,别人可能不用登陆就能看到你的项目!

以上 realm svn 库的名称,同一个 realm名称会共享使用此SVN的用户名和密码 

4、修改passwd文件,建立用户名与密码,在[users]下面添加形如:username = password格式的行,一行代表一个用户。 
admin = admin 
chwencong = 123 

 

5、修改authz文件,分配角色、权限 
[groups] 
manage = admin 
user = chwencong 
[/] 
@manage = rw 
@user = r 
以上的 manage=admin user=chwencong 如果有多个用户属于此用户组,则需用 逗号分隔用户名,
manage=admin,root 
user=aa,cc,rr 
@manage 表示 manage 用户组所拥有的权限,rw 代表可读可写, r 表示只可读 


4、启动服务器 
    
一般启动SVN服务器是通过dos下命令提示符的方式启动的
示例:运行对话框下输入 cmd 然后回车,再dos命令提示符窗口下,任意目录都可,输入命令:svnserve –d –r D:\svn\repository  即可启动服务器。 
说明:有些windows因为安全性的设置会提示是否阻止运行svnserve.exe,一定要选择解除阻止,才能启动服务。 
这句命令的含义是:启动Subversion服务器的存储库,在D盘的svn目录下。这样服务器启动成功。要注意输入命令时的空格和大小写区分。 
每次从dos启动是有些麻烦,当然你可以到安装目录bin下直接双击svnserve.exe启动服务,但是这样毕竟麻烦。所以想着是否可以开机启动。


设置开机启动:
1.
开机运行启动命令:
在系统的这个目录下C:\Documents and Settings\Administrator\「开始」菜单\所有程序\启动,放置的可执行文件会开机启动,再者,启动服务时一句dos命令,所以我们可以将其做成bat批处理文件放在启动路径下,每次开机就可以启动。 
示例:新建批处理文件,名称为svnserve.bat,代码行svnserve –d –r D:\svn\repository,将这个文件放到启动目录下面,然后重新启动电脑,启动完成之后,桌面会弹出一个svnserve dos窗口,此时我们的Subversion服务器已经启动,现在可以进行访问了。 
    
这个方法免于手动启动,但是有个dos黑窗,要是不小心关掉了,服务就又停止了,所以就诞生了一种更好的方法:将svn服务做成windows系统服务。

2.svn服务做成windows系统服务,设置开机启动:
Subversion服务添加到windows服务中需要在dos下创建一个windows服务。命令如下: 
sc create svnserver binPath=<
空格>"D:\Program Files\Subversion\bin\svnserve.exe --service -r E:\svn\repository" displayname=<空格>"Subversion Server" depend=<空格>Tcpip start=<空格>auto

 

这样定义了一个新的windows服务,叫做" svnserver ",会在启动时(这里根目录是D:\svn)执行特定的svnserve.exe 
说明:D:\Program Files\Subversion\bin\svnserve.exe  这个目录是你安装svn服务器的目录。 
写创建服务命令的时候,要注意svnserve.exe必须使用--service选项启动。svnserve的其它选项必须在同一行上指定,但是你不能使用冲突的选项,而选项-r--listen-port 都没有问题。调用SC.EXE时必须注意空格:key= value的模式中key=之间必须没有空格,而且在与value之间只能有一个空格。必须注意执行的命令行中的空格,如果目录名中包含了空格,为了避免这些字符,将整个binpath值放在双引号中。按照上面的命令行输入就没有问题。 
定义好了服务,就可以使用服务管理控制面板进行停止、启动和查询,或者通过命令行:C:\> net stop svnserver C:\> net stat svnserver
删除这个windows服务,输入命令C:\>sc delete svnserver
创建服务成功之后,要到服务管理控制面启动服务,启动完成之后,就可以访问我们的Subversion服务器了。

 

关于SVN注册为windows系统服务

Subversion 1.4版本开始,可以以windows系统服务的形式在开机时自动运行。但Subversion安装程序还不能把自己安装成windows服务,需要我 们自己进行手动安装,

方法如下: 打开一个DOS命令窗口,执行如下命令:  

sc create svnserve binPath= "/"C:/Program Files/Subversion/bin/svnserve.exe/" --service --root e:/svn" displayname= "Subversion Repository" depend= Tcpip start= auto   

其中,scwindows自带的服务配置程序,参数binPath表示svnserve可执行文件的安装路径,由于路径中的"Program Files"带有空格,因此整个路径需要用双引号引起来。而双引号本身是个特殊字符,需要进行转移,因此在路径前后的两个双引号都需要写成/"

--service参数表示以windows服务的形式运行,--root指明svn repository的位置,service参数与root参数都作为binPath的一部分,因此与svnserve.exe的路径一起被包含在一对双 引号当中,而这对双引号不需要进行转义。

displayname表示在windows服务列表中显示的名字, depend =Tcpip 表示svnserve服务的运行需要tcpip服务,start=auto表示开机后自动运行。 

安装服务后,svnserve要等下次开机时才会自动运行。  

若要卸载svn服务,则执行 sc delete svnserve 即可。

sc create SVNService binpath= "C:/Program Files (x86)/Subversion/bin/svnserve.exe --service -r E:/SVN/jmr" displayname= "SVNService" depend= Tcpip start= auto

 

猜你喜欢

转载自lkf009.iteye.com/blog/1867339