本文主要介绍SVN独立服务器的的安装和简单配置:
一、安装SVN
(1)、在Linux图形界面安装SVN软件。安装完成之后利用svnserve --version 查看安装SVN的版本。检查是否安装成功。
(2)、测试安装是否成功:
# svnserve --version 回车显示版本说明安装成功
(3)、建立版本库
# mkdir /var/svn/repository 创建svn数据目录(目录可自行制定)
# svnadmin create /var/svn/repository/project1 project1 就是版本库的名字,可以改变!
(4)\配置svn配置文件(为了方便管理,这里多个库调用相同的配置文件。)
#每个版本库创建之后都会生成svnserve.conf主配文件
# vim /var/svn/repository/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = /var/svn/repository/passwd
authz-db = /var/svn/repository/authz
realm =project1
# mkdir /var/svn/repository
# vim /var/svn/repository/passwd //svn用户配置文件
[users]
user1 = password1
user2 = password2
user3 = password3
user4 = password4
# vim /var/svn/repository/authz //svn权限控制配置文件
[groups] #设置组
group1 = user1,user2 #多用户用逗号隔开
[/] #根目录权限设置(就是“/var/svn/repository”这个文件夹)
user3 = rw #用户1权限是:可读写
user4 = r #用户2权限是:可读,不可写
user = #什么都没写代表没有任何权限
@group1 = rw #设置组权限
[project1:/] #设置根目录下“project1”文件夹的权限
启动服务器
# svnserve -d -r /var/svn/repository --listen-host IP
-d表示以daemon方式(后台运行)运行
-r /var/svn/repository指定根目录是/var/svn/repository
关闭SVN 服务器
# killall svnserve
# ps aux | grep svnserve 查看服务,端口:3690
客户端使用的软件是TortoiseSVN
浏览方法:
打开版本库浏览器输入:svn://ip-addr/project1/
如果能浏览文件,说明SVN已经配置成功。
二、安装APACHE
参考http://blog.youkuaiyun.com/loverwind/article/details/3064356
(1)下载apache,http://httpd.apache.org/download.cgi 通过这个官方网站,我们可以下到最新的版本。现在版本都是以这样的方式表达的:httpd-*.*.*.tar.gz
(2)、例如,你现在去官网下载的就是最新版本:httpd-2.2.9.tar.gz。
(3)、 好了,下载到你的家目录/root里面。
(4)、 [root@hostlocal~]# ls //你会看到你下载的httpd-2.2.9.tar.gz.
(5)、 [root@hostlocal~]# tar –zxvf httpd-2.2.9.tar.gz//解压后为httpd-2.2.9
(6)、 [root@hostlocal~]# mkdir –p /usr/local/apache/ //在这个目录下建立文档,利于管理
(7)、 [root@hostlocal~]# mv /root/httpd-2.2.9 /usr/local/src/ //将安装包放到/src下,利于管理
(8)、 [root@hostlocal~]# cd httpd-2.2.9
(9)、 [root@httpd-2.2.9]#./configure --prefix=/usr/local/apache / //安装路径
(10)、[root@httpd-2.2.9]# make //编译
(11)、 [root@httpd-2.2.9]# make install
(12)、 [root@hostlocal~]# service httpd start //开启httpd服务
安装成功后,apache将会安装到/usr/local/web/apache下面。然后在windows主机的IE中输入apache服务器的IP地址。看是否可以访问到。
三、配置APACHE
(1)\在配置APACH之前确定下面两个模块安装成功。如果用LINUX界面安装SVN的话会自动安装这两个模块。
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
(2)、修改/etc/httpd/conf/httpd.conf在文件结尾处添加如下内容:
#这个配置是对多版本库,如果要访问每个版本库,需要在地址栏中输入HTTP://IP/SVN/版本库
<Location /svn>
DAV svn
SVNParentPath /var/svn/repository
SVNListParentPath on
AuthzSVNAccessFile /var/svn/repository/authz
AuthType Basic
AuthName "Subversion Authorization"
AuthUserFile /var/svn/repository/passwd
Require valid-user
</Location>
(3)、重新启动httpd服务
Service httpd restart
(4)、在命令行窗口中转到Apache所在的目录,执行下列命令
说明:创建用户admin
输入:htpasswd –c /var/svn/repository/passwd admin
说明:使用-c参数来创建一个passwd文件
输出:
New password: *****
Re-type new password: *****
Adding password for user admin
再创建用户的时候就不用-c参数,而是用-m参数,因为文件passwd 已经创建。打开svn_auth_passwd文件,密码使用MD5加密过了,而且同样的密码加密出来的内容却不相同。(5)、修改/var/svn/repository/auchz文件
#定义的用户组,每个用户的权限
[groups]
admin = admin
manager = admin
developer = admin
[project1:/]
@manager = rw
@developer = rw
@tester = r
(6)、在浏览器中输入http://ip/svn/project1回车,在弹出的验证对话框中输入用户名和密码。如果出现如下文字,说明安装成功。
Project1- Revision 0: /
Powered by Subversion version 1.6.11 (r934486).
安装过程中出现的错误:
(1)出现Can't create directory '/var/svn/repository/projecct1/db/transactions/0-1.txn': Permission denied ,原因是权限不足,给相应目录加上
权限(chmod -R 777 /var/svn/repository)
Chown -R apache:apache /var/svn/repository