环境:系统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 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 '';

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 0.0 0.9 ? Ss : : /usr/sbin/apache2 -k start
www-data 0.0 0.6 ? S : : /usr/sbin/apache2 -k start
www-data 0.0 0.8 ? S : : /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

ubuntu安装svn manager的更多相关文章

  1. Linux (Ubuntu)安装svn

    1 先查看是否已经安装了svn 如果没有安装svn则: ubuntu@ip----:~$ svn --version The program 'svn' is currently not instal ...

  2. Ubuntu安装Cloudera Manager以及CDH5.15.2

    一.机子分配 注意,本安装教程是在真机上进行,而非虚拟机.另,此次搭建主要的目的是搭建测试环境,让Hadoop各组件能够运作起来即可,完成搭建后,将用小数据量进行相关数据的计算与测试.线上环境将会使用 ...

  3. ubuntu安装svn

    安装svn # sudo apt-get install subversion 创建svn仓库 # cd /root # mkdir svn # cd svn # svnadmin create re ...

  4. ubuntu 安装 SVN 后的错误:Subversion Native Library Not Available & Incompatible JavaHL library loaded

    问题一 安装了SVN的eclipse插件,使用的时候就会弹出一个错误的提示框:  Subversion Native Library Not Available,加载不到JavaHL.   解决方法 ...

  5. Ubuntu安装Svn,提供http访问

    安装相关package sudo apt-get install subversion subversion-tools apache2 libapache2-svn apache2-utils 创建 ...

  6. ubuntu 安装 svn

    sudo apt-get install subversion

  7. Centos/ubuntu配置SVN服务

    Centos安装svn yum -y install subversion ubuntu安装svn apt-get install subversion Centos配置svn root@hello: ...

  8. ubuntu安装和配置SVN【转】

    ubuntu安装和配置SVN 转自:http://www.jb51.net/os/Ubuntu/56394.html 第一步:安装apache2  libapache2-svn subversion ...

  9. ubuntu下安装svn

    Ubuntu下使用SVN SVN作为日常开发中不可缺少的工具,今天终于开始在Ubuntu下使用了. 1.首先需要安装SVN.Ubuntu下的SVN安装十分简单,sudo apt-get install ...

随机推荐

  1. jsp HTTP Status 405 - HTTP method GET is not supported by this URL

    package myservlet.control; import java.io.IOException; import java.io.PrintWriter; import javax.serv ...

  2. Linux shell之数组

    引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解 ...

  3. MySQL 에서 root 암호 변경하기

    먼저 터미널이나 SSH를 이용해 접속합니다. 그리고 리눅스 쉘상에서 다음과 같이 입력합니다. [mysqladmin을 이용한 암호변경] 형식) root계정]$mysqladmin -u ...

  4. JAXB - Annotations, Annotation for Classes: XmlType

    This annotation adds information that would be available from a schema type, but isn't implied by a ...

  5. c# json转Dictionary字典

     JavaScriptSerializer s = new JavaScriptSerializer();  string jsonTexts = "{\"count\" ...

  6. db2相关问题及解决方法

    DB2相关问题及解决方法: 一.DB2中的代码页(codepage)问题. DB2备份时发生过代码页错误的问题,修改代码页后备份正常,但创建数据库时又发生代码页的错误.这是DB2服务器使用的代码页配置 ...

  7. 华为机试_字符串识别_Vector的使用;

    第一题:拼音转数字输入是一个只包含拼音的字符串,请输出对应的数字序列.转换关系如下:描述:      拼音        yi  er  san  si  wu  liu  qi  ba  jiu  ...

  8. iOS创建UUID

    - (NSString *)getUUID { CFUUIDRef uuidObj = CFUUIDCreate(nil); //create a new UUID NSString * uuidSt ...

  9. CAF(C++ actor framework)使用随笔(send sync_send)(二)

    a). 发完就忘, 就像上面anon_send 以及send #include <iostream> #include "caf/all.hpp" #include & ...

  10. CruiseControl.NET : svnrevisionlabeller

    How to use svnrevisionlabeller as your labeller type in CC.NET: 1. Download ccnet.SvnRevisionLabelle ...