ubuntu安装部署SVN+SVNManager

一、SVN 安装配置  

1、更新系统: 
Java代码   收藏代码
  1. apt-get update  
  2. apt-get upgrade -y  

2、安装相关软件: 
Java代码   收藏代码
  1. apt-get install apache2 subversion libapache2-svn  

安装完subversion后,ubuntu会自动配置apache加载subversion模块,若未自动加载可运行下面命令加载: 
Java代码   收藏代码
  1. sudo a2enmod dav_svn  

3、环境准备:用户、组、文件夹的创建和赋权 
Java代码   收藏代码
  1. #创建仓库文件夹  
  2. mkdir -p /srv/svn/repos  
  3. #将www-data用户加入subversion组  
  4. groupadd subversion  
  5. gpasswd -a www-data subversion  
  6. #赋于文件仓库的访问权限  
  7. chown -R www-data:subversion /srv/svn/repos  
  8. chmod -R g+rws /srv/svn/repos  
  9. #创建密码文件和访问控制文件并赋权(这两个文件由SVNManager维护)  
  10. touch /srv/svn/passwdfile /srv/svn/accessfile  
  11. chown www-data:subversion /srv/svn/passwdfile /srv/svn/accessfile  
  12. a2enmod dav_svn authz_svn  

4、在apache2中配置SVN: 
vi /etc/apache2/mods-available/dav_svn.conf,文件内容如下: 
Java代码   收藏代码
  1. <Location /svn>  
  2.    DAV svn                                                          
  3.    SVNParentPath /srv/svn/repos  
  4.    AuthType Basic                                                    
  5.    AuthName "SVN Repositories"                                       
  6.    AuthUserFile /srv/svn/passwdfile  
  7.   
  8. #   <IfModule mod_authz_svn.c>  
  9.        AuthzSVNAccessFile /srv/svn/accessfile  
  10. #   </IfModule>                          
  11.   
  12. #   <LimitExcept GET PROPFIND OPTIONS REPORT>             
  13.        Require valid-user      
  14. #   </LimitExcept>                                                    
  15.   
  16. </Location>  

5、SVN配置完毕,重启服务: 
Java代码   收藏代码
  1. service apache2 restart  

二、SVNManager安装配置 

1、安装mysql,root密码:root1234 
Java代码   收藏代码
  1. apt-get install mysql-server mysql-client  

2、创建SVNManager数据库 
Java代码   收藏代码
  1. mysql -u root -proot1234  
  2.   
  3. mysql> CREATE DATABASE svnmanager;  
  4. mysql> GRANT all privileges on svnmanager.* to 'svnmanager'@'localhost' identified by 'root1234';  
  5. mysql> FLUSH PRIVILEGES;  
  6. mysql> exit  

3、安装PHP_5 
Java代码   收藏代码
  1. apt-get install php5 php5-mysql php5-sqlite php-pear  

4、安装Pear模块:VersionControl_SVN 
Java代码   收藏代码
  1. pear install VersionControl_SVN-0.3.4  

若不指定版本安装:pear install -f -o VersionControl_SVN,在页面进行赋权操作的时候有问题,可能是软件bug。 

5、下载SVNManager 
Java代码   收藏代码
  1. wget http://prdownloads.sourceforge.net/svnmanager/svnmanager-1.09.tar.gz  

6、部署SVNManager: 
Java代码   收藏代码
  1. tar zxvf svnmanager-1.09.tar.gz -C /var/www  
  2.   
  3. ln -s /var/www/svnmanager-1.09 /var/www/svnmanager  

7、配置SVNManager 
Java代码   收藏代码
  1. mkdir -p /srv/svn/svnconfig  
  2. chown -R www-data:subversion  /srv/svn   
  3. chmod -R g+rws /srv/svn   

8、修改配置文件: 
Java代码   收藏代码
  1.  cp /var/www/svnmanager/config.php.linux /var/www/svnmanager/config.php  
  2.  vi /var/www/svnmanager/config.php  
  3.   
  4. 修改config.php如下配置项:  
  5. $lang = "en_US.utf8";  
  6. $htpassword_cmd = "/usr/bin/htpasswd";  
  7. $svn_cmd = "/usr/bin/svn";  
  8. $svnadmin_cmd = "/usr/bin/svnadmin --config-dir /srv/svn/svnconfig";  
  9.   
  10. $svn_config_dir  =  "/srv/svn/svnconfig";  
  11. $svn_repos_loc   =      "/srv/svn/repos";  
  12. $svn_passwd_file =      "/srv/svn/passwdfile";  
  13. $svn_access_file =      "/srv/svn/accessfile";  
  14.   
  15. $smtp_server = "smtp.163.com";  
  16. $dsn  = "mysqli://root:root1234@localhost/svnmanager"  
  17.   
  18. $admin_name  =  "admin";  
  19. $admin_temp_password    =   "admin";  

9、使SVNManager的web页面支持中文路径: 
Java代码   收藏代码
  1.  vi /usr/share/php/VersionControl/SVN.php  
  2. 将下行  
  3. exec("{$this->prepend_cmd}$cmd 2>&1", $out, $ret_var);  
  4. 改为:  
  5. exec("LANG=zh_CN.UTF-8; {$this->prepend_cmd}$cmd 2>&1", $out, $ret_var);  

10、SVNManager配置完毕,重启服务: 
Java代码   收藏代码
  1. service apache2 restart  

11、进行一次访问:http://svn-ip/svnmanager/  会提示创建SVNManager数据表,刷新页面,出现登录页面。 

三、配置及使用信息: 

1)SVNManager登陆地址:http://svn-ip/svnmanager/ 
2)SVNManager初始管理员帐号和密码:admin/admin(创建一个管理员账户后该帐号失效) 
3)使用管理员帐号登录SVNManager后进行用户、组、仓库的创建并进行赋权操作, 
svnmanager使用教程参见: 
http://wenku.baidu.com/view/7ca281e2524de518964b7d7c.html 

SVN管理员或许需要如下信息: 
1)SVN库的存放位置:/srv/svn/repos 
2)SVN用户和权限控制文件:/srv/svn/passwdfile /srv/svn/accessfile 
3)Apache中SVN的配置文件:/etc/apache2/mods-available/dav_svn.conf 
4)缺省SVNManager使用的MySQL的root密码:root1234
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值