`
omygege
  • 浏览: 1355569 次
文章分类
社区版块
存档分类
最新评论

配置SVN服务器

 
阅读更多


我们使用apache(2.0.63)+subversion(1.4.5)+TortoiseSVN(任意版本)软件来配置本地的SVN服务器。

1)apache服务器把你电脑配置成一个服务器,可以对外提供URL并且设置各个用户信息,从而加入SVN。推荐使用:apache_2.0.63-win32-x86-no_ssl.msi,需要确定本机的80端口没有被其他的程序或者软件占用,安装非常简单,一路点击“Next”就可以讲apache服务器安装到本机了。

2)subversion建立SVN软件库,可以设置用户以及权限,推荐使用:svn-1.4.5-setup.exe,安装方式和apache的安装方式是一样的,一路NEXT就可以讲subversion安装到本机了。

3)TortoiseSVN客户端,任意一个版本都可以,并且如果有兴趣的话,可以安装一个中文插件(官方就有)。

首先为你的电脑设置一个固定IP,例如“192.168.7.254”,其次准备一个内容相对比较少的盘符,按照以下步骤进行SVN的配置:

1)建立一个软件程序仓库

配置本地SVN服务器过程中需要创建一个软件程序仓库。我们在安装subversion的过程中,subversion已经自动生成环境变量,我们可以在DOS命令下直接运行所以subversion安装目录下bin文件夹内的.exe。先创建E:/svn/hkxnb,在MS-DOS命令行键入:


svnadmin create E:/svn/hkxnb

(svnadmin是命令,会自动调用bin文件夹下的svnadmin.exe,前提是E盘要有SVN文件夹哦,否则会提示上级目录无法建立等提示)。


运行成功,找到E盘svn文件夹下的hkxnb,就会发现多了几个文件夹和文件,打开conf文件夹下的svnserve.conf文件,找到如下行


#password-db=passwd


然后把它前面的#去掉,表示hkxnb是需要密码验证的。conf文件夹下的passwd就是记录了这些密码项,使用文本编辑器打开passwd,在[users]标签下面加上我们需要启动的人员用户密码,比如


[users]
chenzw=chenzw
chenzz=chenzz


这样,我们启动了两个用户,一个叫chenzw,密码是chenzw,一个叫chenzz,密码是chenzz保存并且关闭。之后再建一个文件,叫hkxnbAccess.auth,这个文件的作用是设置访问权限,内容如下:


[hkxnb:/]
chenzw=rw
[hkxnb:/test]
chenzz=rw
chenzw=rw


这表示,hkxnb下面的所有子目录chenzw都是有权限读写的,但是chenzz只有权限读写此项目下面的test目录。

2)设置apache,使它能和subvertion一起工作。


在Apache服务器中配置SVN的使用,找到Subersion的安装目录,进入它的bin目录,发现如下两个文件:


mod_authz_svn.so
mod_dav_svn.so


将上面两个文件复制粘帖到apache的安装目录下的modules文件夹中,然后打开apache安装目录下的conf文件夹,找到并打开httpd.conf文件,增加如下两行:


LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so


注意,由于dav_svn需要dav_module的支持,所以要确保下面这一行没有被注释,并且保证在dav_svn之前加载:

LoadModuledav_modulemodules/mod_dav.so

(重要,一定要去掉前面的注释符号#,否则SVN的启动会有问题的)

模块的设置完成之后,设置SVN目录,使我们的apache能知道访问不同的URL的时候,它去哪里寻找这个URL所对应的SVN目录。


在httpd.conf文件末尾,增加如下内容:


<Location/svn/hkxnb>
DAVsvn
SVNPath E:/svn/MyProject
AuthzSVNAccessFile E:/svn/MyProject/conf/hkxnbAccess.auth
SatisfyAny Requirevalid-user
AuthType Basic
AuthName "Subversionrepositories"
AuthUserFile E:/svn/MyProject/conf/users.auth
Requirevalid-user
</Location>


生成users.auth文件。进入apache的安装目录的bin文件夹,输入如下命令:


C:/ProgramFiles/ApacheGroup/Apache2/bin>htpasswd -cb users.auth testuser testpasswd
Automatically using MD5 format.
Adding password for user testuser

注意反斜杠的方向,添加完上面这些,我们会发现hkxnbAccess.auth是我们已经新建好的。

C:/ProgramFiles/ApacheGroup/Apache2/bin>


上面的语句运行之后就会在bin目录生成users.auth,我们可以看到,testuser用户名已经被添加进去了,密码是用MD5加密过的。


把users.auth移到E:/svn/yhxnb/conf/里面去,使我们上面的用户以及密码生效,如果需要增加密码的话,只需要在bin文件夹下按照类似的方法运行 htppasswd -b users.auth testuser2 testpasswd

3)使用SVN


在浏览器里面输入http://localhost/svn/yhxnb(http://192.168.7.253/svn/yhxnb)


还要加入其他的项目:
1、把以后的项目也导入到我们的hkxnb的仓库中,这个的话,就不用改什么配置了
2、
新建一个程序软件仓库,然后只要按上面的步骤,把新的<Location...>设置放到httpd.conf里面就可以了,其中,验证文件,访问权限文件,还有访问SVN的密码都要自己按上面的方法再设一遍。


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics