搭建SVN服务器(支持http)

来源:互联网 发布:linux dump 函数乱码 编辑:程序博客网 时间:2024/06/01 08:28

搭建SVN服务器(支持Apache的http和svnserve服务器两种模式访问)

服务器ip:172.21.3.195

1.安装subversion

# yum -y install subversion 
  • 安装完成后可查看svn版本信息
# svn --versionsvn,版本 1.6.11 (r934486)   编译于 Aug 17 201508:37:43   ...

2.创建svn项目地址

# mrdik /var/svn/demo

3.创建项目版本库

# svnadmin create /var/svn/demo
  • 如需填写多个项目创建多个地址即可
# svnadmin create /var/svn/demo1# svnadmin create /var/svn/demo2# svnadmin create /var/svn/demo3

4.设置svn账户信息

  • 创建/var/svn/conf文件夹,拷贝模板文件
# mkdir /var/svn/conf# cp /var/svn/demo/conf/authz  /var/svn/conf/authz# cp /var/svn/demo/conf/passwd  /var/svn/conf/passwd# cp /var/svn/demo/conf/svnserve.conf  /var/svn/conf/svnserve.conf
  • 查看/var/svn/conf目录中的配置文件
# ls -la /var/svn/demo/conf/总用量 20drwxr-xr-x 2 root root 4096 7月  15 10:14 .drwxr-xr-x 6 root root 4096 7月  15 10:11 ..-rw-r--r-- 1 root root 1095 7月  15 10:13 authz-rw-r--r-- 1 root root  322 7月  15 10:13 passwd-rw-r--r-- 1 root root 2273 7月  15 10:14 svnserve.conf
  • 修改配置文件文件

分别编辑3个配置文件

authz:负责管理账号读写权限

passwd:负责账号的密码管理

svnserve.conf:svn服务器配置文件

    修改authz文件,为用户添加读写权限

# vim /var/svn/conf/authz  

    修改passwd文件,为用户指定密码

# vim /var/svn/demo/conf/passwd

    修改svnserve.conf文件,注意需要去掉的注释就行。

# vim /var/svn/demo/conf/svnserve.conf 

配置完成

5.启动服务

#  svnserve -d -r /var/svn  --config-file /var/svn/conf/svnserve.conf

6.svn地址为

客户端访问svn服务器地址:svn://172.21.3.195:3690/demo

7.参数说明

# svnserve --help用法: svnserve [-d | -i | -t | -X] [options]有效选项:   -d [--daemon]            : 后台模式  -i [--inetd]             : inetd 模式  -t [--tunnel]            : 隧道模式  -X [--listen-once]       : 监听一次方式(调试用)  -r [--root] ARG          : 服务的根目录  -R [--read-only]         : 强制只读;覆盖版本库配置文件  --config-file ARG        : 从文件 ARG 读取配置  --listen-port ARG        : 监听端口                             [方式: daemon, listen-once]  --listen-host ARG        : 监听主机名称或IP地址                             [方式: daemon, listen-once]  -T [--threads]           : 使用线程代替进程 [方式: daemon]  --foreground             : 在前台运行(调试用)                             [方式: daemon]  --log-file ARG           : svnserve 日志文件  --pid-file ARG           : 写进程 PID 到文件 ARG                             [方式: daemon, listen-once]  --tunnel-user ARG        : 隧道用户名(默认是当前UID对应的用户名)                             [方式: tunnel]  -h [--help]              : 显示本帮助  --version                : 显示程序版本信息

8.使用apache添加http访问模式

  • 下载安装依赖组件
# yum install httpd apr apr-util httpd-devel #安装Apache# yum install mod_dav_svn mod_auth_mysql #安装基于Apache的http模式访问的支持模块# chkconfig httpd on #设置开机启动
  • 创建账号密码认证文件
# htpasswd -cm /var/svn/conf/http_passwd zyx# htpasswd -mn   zhengyuxiang >>  /var/svn/conf/http_passwd# htpasswd -mn   zhengyuxiang1 >>  /var/svn/conf/http_passwd# htpasswd -mn   zhengyuxiang2 >>  /var/svn/conf/http_passwd

  根据提示输入2次密码。(/var/svn/conf/passwd为明文存储, /var/svn/conf/http_passwd为md5加密)

  • 设置apache配置文件
# vim /etc/httpd/conf.d/subversion.conf #编辑<Location /svn>DAV svn#SVNPath /home/svnSVNParentPath /var/svn# # Limit write permission to list of valid users.# <LimitExcept GET PROPFIND OPTIONS REPORT># # Require SSL connection for password protection.# # SSLRequireSSL#AuthType BasicAuthName "Authorization SVN"AuthzSVNAccessFile /var/svn/conf/authzAuthUserFile /var/svn/conf/http_passwdRequire valid-user# </LimitExcept></Location>
  • 设置目录权限
# chown apache:apache /home/svn -R #设置svn目录所有者为Apache服务运行账号apache
  • 启动apache服务
# service httpd start #启动

8.测试

  • 使用svn进行查看,创建文件等

  • 使用http模式进行访问

原创粉丝点击