1.SVN服务端的配置: html
安装subversion (Setup-Subversion-1.7.6.msi),安装到C:\Program Files\Subversion\
2.建立SVN存储库(repository)
创建版本库,创建的是多库,先在D盘创建一个文件夹svn,而后在这个文件夹里创建版本库,首先建立一个版本库的名称为:repository
创建版本库的方法:
svnadmin create D:\SVN\repository
repository建立完毕后会在目录下生成若干个文件和文件夹:
db目录就是全部版本控制的数据文件
hooks目录放置hook脚本文件的目录
locks用来放置Subversion文件库锁定数据的目录,用来追踪存取文件库的客户端
format文件是一个文里面只放了一个整数,表示当前文件库配置的版本号
3.配置SVN服务器
配置服务器的地方就是你所创建版本库的地方
打开D:\SVN\repository /conf/svnserve.conf
找到下面的句子:
[general]
password-db = passwd
anon-access = none
auth-access = write
authz-db = authz
realm = My First Repository
去之每行开头的#,其中第二行是指定身份验证的文件名,即passwd文件anon-access = none 是匿名用户不能访问,必需要有用户名和密码。(注意:必定要注意格式去掉注释后要顶格不能有空) 一样打开passwd文件,将
[users]
# harry = harryssecret
# sally = sallyssecret
chenzongliang = 123521
chenqiang = 12365
viong = 12354
格式为“用户名 = 密码”,如可插入一行:mm = mm,即为系统添加一个mm,密码为mm的用户.(注意顶格写不要有空隙)。
4.运行SVN服务器
单库下运行服务器的方式:
SVN服务器的执行以下命令:
svnserve --daemon --root D:\SVN\repository(此时svnserve只能为一个版本库工做)
能够简写为:svnserve -d -r D:\SVN\ repository (注意:这是临时打开的服务,命令执行后不能关闭窗口)
用后台服务的方式能够设置开机自动执行,执行语句为:
sc create SVNService binpath= "\"C:\Program Files\Subversion\bin\svnserve.exe\" --service -r D:\SVN\repository "displayname= "SVNService" depend= Tcpip start= auto
多库下运行服务器的方式:
SVN服务器的执行以下命令:
svnserve -d -r D:\SVN (此时svnserve能够为多个版本库工做)
用后台服务的方式能够设置开机自动执行,执行语句为:
sc create SVNService binpath= "\"C:\Program Files\Subversion\bin\svnserve.exe\" --service -r D:\SVN" displayname= "SVNService" depend= Tcpip start= auto
5.用户客户端访问 用户访问的地址能够写成:svn://IP地址/版本库名称
SVN服务端权限的制定
单库下设置权限:
chenzongliang,chenqiang是repository的管理者,对repository有彻底权限
viong对repository只有读权限
修改 D:\svn\Repository\conf\authz
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
admin = chenzongliang,chenqiang
yunwei = viong
[/]
* = r
@admin = rw
对应的组及组的用户:
group_CMMI:jsm
group_wjjc:wrl
group_xczh:sb
关于中文目录,也是没有问题的,只是注意要把authz文件转化为UTF-8无B 式,UltraEdit里显示的文件格式为U8- DOS ,具体的作法是UltraEdit打开authz文件,而后选择“文件->转换->ASCII转UTF-8”,而后保存。
利用UltraEdit咱们能够将BOM 去掉。方法是:首先利用“UTF-8 TO ASCII” 件转换成本地编码,一般是GB2312码,而后再使用“ASCII TO UTF-8(UN Editing)”来转换到 UTF-8 便可
安装服务
sc create SVNService binpath= "\"C:\Program Files\Subversion\bin\svnserve.exe\" --service -r D:\svn" displayname= "SVNService" 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 便可
sc对选项的格式还有要求,例如“depend= Tcpip”不能写为“depend = Tcpip”或“depend=Tcpip”,也就是“=”前不能有空格,然后面必须有空格
删除服务
sc delete Svnservice
修改配置
sc config Svnservice binpath= "d:\subversion\bin\svnserve.exe --service -r E:\projectversion" displayname= "Svnservice" depend= Tcpip
设置为自启动
sc config Svnservice start= auto
启动服务
net start Svnservice
客户端:
客户端版本 TortoiseSVN-1.7.8.23174-win32-svn-1.7.6.msi,安装完成后,在其它盘建个文件夹而后右击检查,提示输入帐号密码就ok
能够参考如下两篇文章:
http://www.cnblogs.com/xiaobaihome/archive/2012/03/20/2407610.html
http://hi.baidu.com/davice_li/item/b356fe5f0a852e0be6c4a5a1