windows server 2003 svn 服务器安装及配置(无Apache)

SVN,不用介绍了,一款相当不错的版本控制服务器,跨于多个平台之上。以前在Linux下装过一个,配置相对复杂一点,但是windows下的服务器安装比较简单。具体过程如下:
1、安装服务器。我选择了比较好用的VisualSVN-Server,现在版本是2.1.2

2、客户端安装TortoiseSVN,现在版本1.6.8,以及其LanguagePack,都可以下到。在安装完客户端后,就可以在文件夹 右键 的菜单里面看到版本控制的信息了。对,就是这么好用,它将windows的文件夹进行了重载,受版本管理的文件夹都会有相应的图标,相应好认。
在安装完语言包后,右键进行设置,把语言设置为中文即可。
注意:在服务器端同时安装客户端是为了配置及使用服务器方便一些。并不一定要装。

3、进行服务器端的配置。
启动服务器 :可以选择将其安装为 系统服务 ,也可以建立一个 批处理文 件,将其拖到系统启动下。
下面以批处理文件为例:
cd H:\Program Files\VisualSVN Server\bin\
svnserve.exe -d -r G:\ServerData\Data\SVN\Repositories\svnrepos\
该路径为目前的版本库位置。运行该批处理文件, 弹出的命令窗口不要关闭 。现在可以看到 3690 端口已经被监听了,说明启动成功了。

系统服务的安装方法:
sc create svnservice binpath= "H:\Program Files\VisualSVN Server\bin\svnserve.exe --service -r G:\ServerData\Data\SVN\Repositories\" displayname= "SVNService" depend= Tcpip start= auto
但是不一定能成功。

精细的访问权限设置
在版本控制中,权限配置是相当重要的,SVN服务器采用 authz 文件来进行权限配置。首先在某个文件夹下建立版本库(右键中有哦~~~),然后对其下的conf文件夹内的一些文件进行配置。
文件:svnserve.conf ,该文件对SVN进行总体配置,包括是否使用帐号密码,使用使用authz权限控制方式,默认的访问权限等等。
我的文件内容如下(我去除了被注释掉的内容):
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz.public
文件:passwd ,该文件中保存了用户的帐号和密码,看看就会写了,不多说。
文件:authz ,该文件用于配置精细的访问权限。
这里有两种情况:
A:-r直接指定到版本库(称之为单库svnserve方式)
比如,有一个库project1,位于D:\svn\project1
使用以下命令启动svnserve
  1. svnserve -d -r D:\svn\project1
在这种情况下,一个svnserve只能为一个版本库工作
authz文件如果配置成下面这样就是错的,
  1. [groups]
  2. admin=user1
  3. dev=user2
  4. [project1:/]
  5. @admin=rw
  6. @doc=r
应该配置成
  1. [groups]
  2. admin=user1
  3. dev=user2
  4. [/]
  5. @admin=rw
  6. @doc=r
因为[project1:/]表示库project1的根目录,而按上面的启动参数,是没有库的概念的。
使用类似这样的URL:svn://192.168.0.1/ 即可访问project1

B:-r指定到版本库的上级目录(称之为多库svnserve方式)
同样,有一个库project1,位于D:\svn\project1
如果使用以下命令启动svnserve
  1. svnserve -d -r D:\svn
这种情况,一个svnserve可以为多个版本库工作,
这时如果想限制指定库的指定目录,就应该指定具体的库,像这样
  1. [groups]
  2. admin=user1
  3. dev=user2
  4. [project1:/]
  5. @admin=rw
  6. @doc=r
如果此时你还用[/],则表示所有库的根目录,同理,[/src]表示所有库的根目录下的src目录
使用类似这样的URL:svn://192.168.0.1/project1 即可访问project1
这样的URL:svn://192.168.0.1/project2 即可访问project2

2,对中文目录进行权限控制时,没有将权限文件authz改为utf-8格式。

svn对于非英文文件名和目录名使用utf-8格式编码处理,要对中文目录进行正确控制,
应该使用无BOM的utf-8格式,如何将默认的文件转为utf-8,
我使用的是UltraEdit的菜单"ASCII to UTF-8 (Unicode Editing)"。在UltraEdit的配置中,可以设置有无BOM
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值