【原创】Subversion版本管理器简单配置说明
Subversion版本管理器简单配置说明,没地方放了,应该属于服务器搭建之类的分类的,可是论坛里现在还没有这样的版块,所以就先放在这里了。
一、Subversion的下载与安装 Subversion的官方网站:http://subversion.tigris.org/ 可以在官方网站上下载Subversion的最新版本。本说明使用的是1.1.4的Win32版。 下载下来Subversion安装文件后,直接安装就可以了。这里假设系统上已经安装好了Apache了,这样,Subversion安装的时候选择Apache方式,它就会自动的配置相关的模块到Apache里。
二、Subversion的建立与使用仓库使用。 $svnadmin create /path/to/repos 在这里,我们假设设置D盘svn目录下的svn1和svn2两个目录为仓库。 svnadmin create d:/svn/svn1 svnadmin create d:/svn/svn2 这样,我们使用的时候,就可以向里面提交文件。 仓库的使用,必须先把服务搭建起来才行。我们等后面的服务器配置后再讲。
三、Subversion服务器的搭建 我们使用与Apache模块的方式运行。 首先,把我们需要的SVN模块加载上,修改Apache的配置文件httpd.conf:
LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule dav_module modules/mod_dav.so LoadModule authz_svn_module modules/mod_authz_svn.so
然后配置仓库:
<Location /svn> DAV svn SVNParentPath d:/svn </Location> 然后,配置验证方式: 这里使用旦Apache的验证方式:
htpasswd -cm d:/svn/svn-auth-file user1 然后,会提示输入密码,这里就加入了一个用户了。然后再加一个用户: htpasswd -m d:/svn/svn-auth-file user2
然后修改配置: <Location /svn> DAV svn SVNParentPath d:/svn AuthType Basic AuthName “Subversion repository” AuthUserFile d:/svn/svn-auth-file Require valid-user AuthzSVNAccessFile d:/svn/svn-access-file </Location> 下面,就要写这个svn-access-file文件了,它是用来控制用户访问仓库的权限的,我们把说明写在后面 [svn1:/] //这表示,仓库svn1的根目录下的访问权限 harry = rw // svn1仓库harry用户具有读和写权限 sally = r // svn1仓库sally用户具有读权限 [svn2:/] //svn2仓库根目录下的访问权限 harry = r // harry用户在svn2仓库根目录下只有读权限 sally = // sally用户在 svn2仓库根目录下无任何权限 #[/] // 这个表示在所有仓库的根目录下 #* = r // 这个表示对所有的用户都具有读权限 #[groups] // 这个表示群组设置 #svn1-developers = harry, sally // 这个表示某群组里的成员 #svn2-developers = sally #[svn1:/] #@svn1-developers = rw // 如果在前面加上@符号,则表示这是个群组权限设置
将这个设置完成后。重启Apache,就可以通过 http://localhost/svn/svn1 http://localhost/svn/svn2 这两个URL来访问仓库了,当然,要受权限的限制,必须是合法用户才能访问且具有相应的权限 客户端的使用,可以通过许多客户端GUI软件来用。比如TortoiseSVN就很好用。 官方网址:http://tortoisesvn.tigris.org/
发表时间: 2005-05-14 01:49
以上是使用Apache方式配置服务器.如果不使用Apache,使用svnserve方式,则灵活性要小得多.下面讲一个例子说明一下,以linux下为例子:
一.找一个地方集中放所有的SVN库,为方便起见,我们在根目录下建一个目录(或者可挂在一个单独的分区上,把/svn挂上),最好新建一个svn用户来对subversion进行配置,不要用root用户 这里假设创建了个库: test1, test2二
#mkdir /svn $svnadmin create /svn/test1 $svnadmin create /svn/test2
二.配置权限,编辑每个库下的conf/svnserve.conf, conf/passwd这两个文件 因为svnserve的限制,所以对权限的配置比较的笼统,如要想更灵活,得用其它方式(ssh或者pl等)
teset1/conf/svnserve.conf
[general] anon-access = none auth-access = write password-db = passwd realm = test1 Repository
test2/conf/svnserve.conf
[general] anon-access = none auth-access = write password-db = passwd realm = test2 Repository
然后,编辑每个库下的conf/passwd文件(用户名和密码) test1/conf/passwd
[users] admin = adminpasswd test1 = test1passwd
test2/conf/passwd
[users] admin = adminpasswd test2 = test2passwd
三.启动服务器,因为要使用多个库,所以不使用-r参数指定库 $svnserve -d
如此,服务器基本配置完毕 客户端的使用和前面的一样只不过,库网址变成了svn://样式的了,比如:
svn co svn://localhost/svn/test1 然后会提示用户名和密码 |