共计 3170 个字符,预计需要花费 8 分钟才能阅读完成。
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 | |
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 | |
#写入如下内容 | |
<Location /svn> | |
DAV svn | |
SVNParentPath /var/svn/repos | |
AuthType Basic | |
AuthName "SVN Repositories" | |
AuthUserFile /var/svn/passwdfile | |
AuthzSVNAccessFile /var/svn/accessfile | |
Require valid-user | |
</Location> | |
#使配置文件生效 | |
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 | |
CREATE DATABASE svnmanager; | |
GRANT all privileges on svnmanager.* to 'svnmanager'@'localhost' identified by '123456'; | |
FLUSH PRIVILEGES; | |
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 | |
DocumentRoot /var/www/svnmanager-1.09 |
2.6、重启 apache
service apache2 restart
3、使用服务
3.1、访问首页
http://localhost
使用用户名 admin,密码 admin 登录;
第一次访问时会提示没有数据库,然后自动帮你建表,再访问一次就可以正常访问初始界面
注意这是临时账户只能登录一次,所以在登录成功后第一件事就是添加一个管理员账户;如果忘记创建了那么你就需要清空数据库重新访问 url
3.2、添加用户:
3.3、添加仓库
3.4、添加权限
3.5、访问仓库
http://localhost/svn/sendbox
注意:这里要添加一个 svn 路径前缀,后面加仓库名;这里仓库名必须全部小写,即使你创建的时候用到了大写
输入你有权限访问改仓库的账号和密码
Linux 中 Subversion 配置实例 http://www.linuxidc.com/Linux/2012-02/53109.htm
CentOS 6.2 SVN 搭建 (YUM 安装) http://www.linuxidc.com/Linux/2013-10/91903.htm
Apache+SVN 搭建 SVN 服务器 http://www.linuxidc.com/Linux/2013-03/81379.htm
Windows 下 SVN 服务器搭建和使用 + 客户端重新设置密码 http://www.linuxidc.com/Linux/2013-05/85189p5.htm
Ubuntu Server 12.04 安装 SVN 并迁移 Virtual SVN 数据 http://www.linuxidc.com/Linux/2013-05/84695.htm
Ubuntu Server 搭建 svn 服务以及迁移方法 http://www.linuxidc.com/Linux/2013-05/84693.htm
借助网盘搭建 SVN 服务器 http://www.linuxidc.com/Linux/2013-10/91271.htm
Subversion (SVN) 的详细介绍 :请点这里
Subversion (SVN) 的下载地址 :请点这里
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-07/133280.htm
