CentOS6.3配置SVN之subversion1.7.7

今天配置了 SVN 记在这儿 备忘:

1. 下载 svn 软件包和依赖包


[plain]view plaincopy 在CODE上查看代码片
  1. cd /mydata/soft  

  2. wget http://labs.mop.com/apache-mirror/subversion/subversion-1.7.7.tar.gz  

  3. wget http://archive.apache.org/dist/apr/apr-util-1.5.1.tar.gz  

  4. wget http://archive.apache.org/dist/apr/apr-1.4.6.tar.gz  

  5. wget http://www.sqlite.org/sqlite-amalgamation-3071401.zip  


2. 安装 依赖软件包



[plain]view plaincopy 在CODE上查看代码片
  1. tar zxvf apr-1.4.6.tar.gz  

  2. cd apr-1.4.6/  

  3. ./configure --prefix=/usr/local/apr  

  4. make && make install  

  5. cd ../  


[plain]view plaincopy 在CODE上查看代码片
  1. tar zxvf apr-util-1.5.1.tar.gz  

  2. cd apr-util-1.5.1/  

  3. ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr  

  4. make && make install  

  5. cd ../  


3. 安装 svn


注意这里是 SVN 和 sqlite 解压到一起再安装的


[plain]view plaincopy 在CODE上查看代码片
  1. tar xvf subversion-1.7.7.tar.gz  

  2. unzip sqlite-amalgamation-3071401.zip  

  3. mv sqlite-amalgamation-3071401 ./subversion-1.7.7/sqlite-amalgamation  

  4. cd subversion-1.7.7  

  5. ./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --without-berkeley-db --with-ssl  

  6. make && make install  

  7. cd ..  


4. 修改环境变量



[plain]view plaincopy 在CODE上查看代码片
  1. vi /etc/profile  


开头加入:



[plain]view plaincopy 在CODE上查看代码片
  1. PATH=$PATH:/usr/local/svn/bin  

  2. export PATH  


可能需要断开当前 ssh 连接重新登陆才会生效



5. 检测是否安装成功


[plain]view plaincopy 在CODE上查看代码片
  1. svnserve --version  


# 显示如下信息则表示安装成功。


# svnserve, version 1.7.7


6. 开启防火墙 SVN 端口


[plain]view plaincopy 在CODE上查看代码片
  1. iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9999 -j ACCEPT  


保存防火墙设置



[plain]view plaincopy 在CODE上查看代码片
  1. /etc/rc.d/init.d/iptables save  


7. 创建 svn 库 www



[plain]view plaincopy 在CODE上查看代码片
  1. mkdir -p /var/svn/  

  2. cd /var/svn/  

  3. svnadmin create www  

  4. cd www/conf/  

  5. ls  


# 显示当前项目配置文件


# authz passwd svnserve.conf


8. 配置版本库信息

项目配置:


[plain]view plaincopy 在CODE上查看代码片
  1. vi svnserve.conf  


修改:去掉注释符



[plain]view plaincopy 在CODE上查看代码片
  1. [general]  

  2. anon-access = none  

  3. auth-access = write  

  4. password-db = passwd  

  5. authzauthz-db = authz  

  6. realm = www  


定义版本库访问权限:



[plain]view plaincopy 在CODE上查看代码片
  1. # vi authz  


添加:



[plain]view plaincopy 在CODE上查看代码片
  1. [/]  

  2. svnuser = rw  

  3. [www]  

  4. svnuser = rw  


设定用户密码:



[plain]view plaincopy 在CODE上查看代码片
  1. # vi passwd  


添加:



[plain]view plaincopy 在CODE上查看代码片
  1. svnuser = 123456  


9. 建立启动svn 的用户



[plain]view plaincopy 在CODE上查看代码片
  1. useradd svn  

  2. passwd svn  


回车后输入两次密码


然后设置用户所有权,允许 svn 访问版本库:


[plain]view plaincopy 在CODE上查看代码片
  1. chown -R svn:svn /var/svn  


10. 启动 SVN


先写个提醒:

开放的 svn 根目录经测试应该只能是项目仓库的父级目录


10.1 用设定帐户启动


[plain]view plaincopy 在CODE上查看代码片
  1. # su svn -c "svnserve -d --listen-port 9999 -r /var/svn"  


说明:


su svn 表示以用户svn 的身份启动svn

-d 表示以daemon 方式(后台运行)运行

–listen-port svn 默认端口是3690, 9999表示使用9999 端口,可以换成你需要的端口。但注意,使用1024以下的端口需要root 权限

-r /var/svn/www 指定根目录是/var/svn/


10.2 对于单个代码仓库启动命令:


[plain]view plaincopy 在CODE上查看代码片
  1. # svnserve -d -r /var/svn/www --listen-host 22.21.50.17 –listen-port 9999  


说明:


-d 表示在后台运行,

-r 指定服务器的根目录,

这样访问服务器时就可以直接用svn://服务器ip 来访问了。


10.3 对于多个代码仓库:

通过 -r 开放 SVN 的根目录,


[plain]view plaincopy 在CODE上查看代码片
  1. # svnserve -d -r /var/svn/ --listen-host 22.21.50.17  –listen-port 9999  


客户端访问时再指定仓库目录即可访问 如: svn://22.21.50.17:9999/www 来分别访问每个项目



10.4 如果显示如下,即为启动成功:


[plain]view plaincopy 在CODE上查看代码片
  1. svn 6941 1 0 15:07 ? 00:00:00 svnserve -d -r /var/svn  


10.5 以 root 帐号 启动 SVN 服务



[plain]view plaincopy 在CODE上查看代码片
  1. svnserve -d -r /var/svn/ --listen-host 22.21.50.17  --listen-port 9999  


10.6 检查是否启动成功



[plain]view plaincopy 在CODE上查看代码片
  1. ps -ef|grep svnserve  


终于完成!!!

你可能感兴趣的:(CentOS6.3配置SVN之subversion1.7.7)