ubuntu svn mysql_Ubuntu下SVN+SVNManager搭建

本文介绍了如何在Ubuntu系统中安装和配置SVNManager,包括安装基础库、创建目录、配置Apache和MySQL,以及设置中文路径支持。通过SVNManager,用户可以远程管理Subversion仓库,进行创建、删除、权限设置等操作。此外,还提供了访问仓库的步骤和注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SVNManager是一个基于Web的Subversion图形化管理工具。利用这个工具,用户可以远程创建配置库、删除和加载配置库、设置用户访问权限、邀请创建账号等功能。

下面说说在Ubuntu下SVN+SVNManager搭建过程。

1、准备

1.1、安装基础库

apt-get update

apt-get upgrade -y

apt-get install apache2 subversion apache2-utils libapache2-svn

apt-get install mysql-server mysql-client

apt-get install php5 php5-mysql php5-sqlite php-pear

pear install VersionControl_SVN-0.3.4

##使apche2模块生效

a2enmod dav_svn authz_svn

1.2、创建基础目录

#创建仓库主文件夹

mkdir -p /var/svn/repos

#创建仓库配置文件夹

mkdir -p /var/svn/svnconfig

#添加subversion组

groupadd subversion

#将www-data用户加入subversion组

gpasswd -a www-data subversion

#创建密码文件和访问控制文件并赋权(这两个文件由SVNManager维护)

touch /var/svn/passwdfile /var/svn/accessfile

#赋于文件仓库的访问权限

chown -R www-data:subversion /srv/svn

chmod -R g+rws /srv/svn

1.3、下载svnmanager

wget http://prdownloads.sourceforge.net/svnmanager/svnmanager-1.09.tar.gz

tar -xvf svnmanager-1.09.tar.gz

mv svnmanager-1.09 /var/www/

2、配置

2.1、配置apache支持svn

vim /etc/apache2/mods-available/dav_svn.conf

#写入如下内容

DAV svn

SVNParentPath /var/svn/repos

AuthType Basic

AuthName "SVN Repositories"

AuthUserFile /var/svn/passwdfile

AuthzSVNAccessFile /var/svn/accessfile

Require valid-user

#使配置文件生效

ln -s /etc/apache2/mods-available/dav_svn.conf /etc/apache2/mods-enabled/dav_svn.conf

2.2、配置mysql

#创建svnmanager数据库并添加svnmanager用户和密码123456

mysql -u root -p

mysql> CREATE DATABASE svnmanager;

mysql> GRANT all privileges on svnmanager.* to 'svnmanager'@'localhost' identified by '123456';

mysql> FLUSH PRIVILEGES;

mysql> exit

2.3、配置svnmanager

cp /var/www/svnmanager/config.php.linux /var/www/svnmanager/config.php

vim /var/www/svnmanager/config.php

#修改config.php如下配置项:

$lang = "en_US.utf8";

$htpassword_cmd = "/usr/bin/htpasswd";

$svn_cmd = "/usr/bin/svn";

$svnadmin_cmd = "/usr/bin/svnadmin --config-dir /var/svn/svnconfig";

$svn_config_dir = "/var/svn/svnconfig";

$svn_repos_loc = "/var/svn/repos";

$svn_passwd_file = "/var/svn/passwdfile";

$svn_access_file = "/var/svn/accessfile";

$smtp_server = "smtp.163.com";

$dsn = "mysqli://svnmanager:123456@localhost/svnmanager"

$admin_name = "admin";

$admin_temp_password = "admin";

2.4、配置中文路径支持

#使SVNManager的web页面支持中文路径

vim /usr/share/php/VersionControl/SVN.php

#将下行

exec("{$this->prepend_cmd}$cmd 2>&1", $out, $ret_var);

#改为:

exec("LANG=zh_CN.UTF-8; {$this->prepend_cmd}$cmd 2>&1", $out, $ret_var);

2.5、使svnmanager可访问

vim /etc/apache2/sites-available/000-default.conf

#设置svnmanager根目录

DocumentRoot /var/www/svnmanager-1.09

2.6、重启apache

service apache2 restart

3、使用服务

3.1、访问首页

http://localhost

使用用户名admin,密码admin登录;

第一次访问时会提示没有数据库,然后自动帮你建表,再访问一次就可以正常访问初始界面

注意这是临时账户只能登录一次,所以在登录成功后第一件事就是添加一个管理员账户;如果忘记创建了那么你就需要清空数据库重新访问url

3.2、添加用户:

dbb26ecc393ebdc96ad7fa01ad356082.png

3.3、添加仓库

4011d5cb4c5d53bd8ef1e141189f31ae.png

3.4、添加权限

27925053329aea202db899ca624256a3.png

3.5、访问仓库

http://localhost/svn/sendbox

注意:这里要添加一个svn路径前缀,后面加仓库名;这里仓库名必须全部小写,即使你创建的时候用到了大写

输入你有权限访问改仓库的账号和密码

Subversion (SVN) 的详细介绍:请点这里

Subversion (SVN) 的下载地址:请点这里

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值