windows下svn服务器配置简介

本文参考了网上一些文章,总结了在windows平台下的安装与配置,希望对大家有帮助。
1.下载安装。
下载服务器端:Subversion,地址在http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=11151&expandFolder=11151&folderID=91

下载客户端TortoiseSvn:http://tortoisesvn.net/downloads.html
安装好Subversion,我是装在D:\Program Files (x86)\Subversion下。客户端随意安装。


2.建立版本库(Repository)。
版本库可以看作是服务器上集中存放和管理数据的地方。可以建立多个,每个版本库有自己独立的配置。
比如我新建文件夹F:\svn作为版本库。那么在Subversion的bin目录下运行命令:
svnadmin create F:\svn\
你会看到该目录下新建了一堆文件和文件夹。接下来就可以对该版本库进行权限配置了。

3.运行服务器。
在Subversion的bin目录下运行命令:

svnserve --daemon --root F:\svn

如果你是在cmd窗口运行的,注意不要关闭该窗口,否则svnserve也被关闭了。你可以在cmd窗口中ctrl+c终止其运行。

4.服务器自启动
windows下最好的方式是采用服务的方式。建立一个bat,复制如下代码:
sc create SVN binpath= "\"D:\Program Files (x86)\Subversion\bin\svnserve.exe\" --service -r f:\svn" displayname= "SVN" depend= Tcpip
pause
请格外注意,由于路径中包括空格,一定要用\处理"号。而displayname= "SVN" depend= Tcpip这里等号后面的空格也是必不可少的。

最后你可以在services.msc里面亲自查看svn服务是否设置为自启动。

要删除服务很简单,使用如下命令:
sc delete svn

5.权限配置
在版本库的conf文件夹中有svnserve.conf、passwd、authz 这3个文件。里面有一些例子,都被#注释了,注意删掉#号和紧跟他的空格。
svnserve.conf文件配置如下:
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz

anon-access表示匿名用户只有只读权限;
auth-access表示授权用户拥有可写权限;
password-db指定帐号密码配置文件的文件名;
authz-db指定用户权限配置文件的文件名。

passwd文件配置举例如下:
[users]
admin = 123123
guest1 = 111111|
guest2 = 111111

规则很简单。等号左边是用户名,右边是密码。
最后是authz文件,配置很灵活,例如:
[groups]
g_admin = admin
g_guest = guest1, guest2
这一段用于配置用户组。在这里我创建一个g_admin表示管理员分组,组里有一个管理员帐号admin ,g_guest表示普通用户分组,内有帐号guest1 ,guest2
#根目录
[/]
@g_admin = rw
@g_admin = r
*=r
这一段表示根目录的权限。管理员组有所有权限,而用户组只有可读权限,不在这2个组的其他所有用户都只有只读权限。

可以按照这个规则配置每个文件夹的规则。比如要配置\Project\Doc目录,就新建一个[\Project\Doc]字段即可。
注意如果不做任何配置,则默认只读;如果父文件夹不设置而子文件夹设可写,则子文件夹可写而父文件夹只读。

如果要支持中文目录 ,需要将配置文件采用UTF-8无BOM模式编码。(用UE或者notepad++都可以)

6.访问

上文已经建立了一个名为svn的版本库。要测试是否可被访问,使用TortoiseSvn的版本库浏览器(Repository Browser),在地址栏输入
svn://localhost/svn
只要把localhost改成你的IP地址或者计算机名就可以让同一个局域网内的其他机器访问了。

附:

客户端报svn: E220001: 遇到不可读的路径;拒绝访问。英文是: Unreadable path encountered; access denied; 
在项目的conf/svnserve.conf 中, 设置 anon-access = none 即可. 然后重启Subversion 服务.
如果本地SVN客户端查看过日志会有缓存, 需要在 设置->日志缓存->缓存的版本库 中删除有问题的版本缓存 再重新查看日志就好了.

参考文献:

http://www.blogjava.net/MEYE/archive/2010/03/10/315041.html(此文章很详细)

http://blog.csdn.net/yangtalent1206/article/details/6267842(此文章通过分析具体案例来配置权限,相当赞)

http://hi.baidu.com/_rains_/item/9e0fd316d47346e2dceecac3

http://blog.csdn.net/yangtalent1206/article/details/6327568

http://www.blogjava.net/jasmine214--love/archive/2010/10/14/335094.html(此文章简单介绍服务器Hook配置,高级用户可以看看)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值