ubuntu安装svn manager
环境:系统ubuntu14.04
0. 更新软件库
sudo apt-get update sudo apt-get upgrade -y
1. 安装apache,svn,svn的apache模块
sudo apt-get install apache2 subversion libapache2-svn sudo apt-get install apache2-utils sudo a2enmod dav_svn
2. 创建svn版本库的服务器端路径和配置文件
sudo mkdir /var/svn/repos sudo touch /var/svn/repos/accessfile sudo touch /var/svn/repos/passwdfile sudo chmod 666 accessfile passwdfile
3. 映射到apache
配置 /etc/apache2/mods-available/dav_svn.conf 文件,追加下面的内容
<Location /svn> DAV svn SVNParentPath /var/svn/repos AuthType Basic AuthName "SVN Repositories" AuthUserFile /var/svn/repos/passwdfile # <IfModule mod_authz_svn.c> AuthzSVNAccessFile /var/svn/repos/accessfile # </IfModule> # <LimitExcept GET PROPFIND OPTIONS REPORT> Require valid-user # </LimitExcept> </Location>
编辑 /etc/apache2/sites-availables/000-default.conf 文件,指定文档根目录
DocumentRoot /var/www
4. 安装PHP,MYSQL数据库,创建svn manager所需要数据库
sudo apt-get install php5 php5-mysql php5-sqlite php-pear sudo apt-get install mysql-server # 密码设置为root mysql -uroot -proot; CREATE DATABASE svnmanager; grant all privileges on svnmanager.* to 'svnmanager'@'localhost' identified by '123456';
5. 安装svn manager
wget http://prdownloads.sourceforge.net/svnmanager/svnmanager-1.09.tar.gz sudo tar zxvf svnmanager-1.09.tar.gz -C /var/www/ sudo mv /var/www/svnmanager-1.09 /var/www/svnmanager wget http://kr.archive.ubuntu.com/ubuntu/pool/universe/p/php-versioncontrol-svn/php-versioncontrol-svn_0.3.1-1_all.deb dpkg -i php-versioncontrol-svn_0.3.1-1_all.deb
6. 配置svn manager
sudo cp /var/www/svnmanager/config.php.linux config.php vim /var/www/svnmanager/config.php
$svn_repos_loc = "/var/svn/repos"; $svn_passwd_file = "/var/svn/repos/passwdfile"; $svn_access_file = "/var/svn/repos/accessfile"; $smtp_server = "smtp.163.com"; $dsn = "mysqli://root:root@127.0.0.1/svnmanager";
7. 创建用户,版本库(写到之前建立的配置文件中去)
第一次登录时用config.php里定义的用户名密码(都是admin)
创建用户
用新用户登录
使用新用户创建版本库
创建普通用户(表单里需要登录者的密码)
8. 客户端从HTTP地址checkout(根据第3步做的映射)
svn co http://ip:port/svn/repos
注意的问题
ps aux | grep apache2 root 5513 0.0 0.9 104492 9956 ? Ss 06:56 0:01 /usr/sbin/apache2 -k start www-data 5517 0.0 0.6 121612 6260 ? S 06:56 0:00 /usr/sbin/apache2 -k start www-data 5518 0.0 0.8 122796 9160 ? S 06:56 0:00 /usr/sbin/apache2 -k start
权限,ubuntu的apache进程是www-data启动的因此版本库目录的属主也得是www-data
sudo chown -R www-data:www-data /var/svn/svnmanager/ sudo chown -R www-data:www-data /var/svn/repos/
svn manager需要version_control.deb因此需要安装
参考:
http://wuyaweiwude.iteye.com/blog/1915064
http://www.linuxidc.com/Linux/2012-06/62173.htm
http://blog.chinaunix.net/uid-20410459-id-172337.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
2013-03-19 被老大毙掉的架构设计,真的很差吗?
2012-03-19 数据库事务级别
2012-03-19 【MySQL】Innodb事务隔离级别(转)