给VPS装了个Subversion
前言
上次老谢在群里问到SVN的问题,其实大D很早就想在VPS上搞Subversion,但对美国VPS线路有些没有信心。
不过这次还是决定搞一个。
本文在LAMP环境的VPS上安装Subversion,采用fsfs存储方式,采用编译安装的方式来安装。
安装
1.下载相关包
1 2 3 |
wget http://mirrors.hust.edu.cn/apache//apr/apr-1.5.1.tar.gz wget http://mirrors.hust.edu.cn/apache//apr/apr-util-1.5.3.tar.gz wget http://www.sqlite.org/sqlite-amalgamation-3071501.zip |
2.安装apr
apr是Apache Portable Runtime,Subversion需要apr的支持。
1 2 3 4 |
tar -zxvf apr-1.5.1.tar.gz cd apr-1.5.1.tar.gz ./configure --prefix=/usr/local/apr make && make install |
3.安装apr-util
1 2 3 4 |
tar -zxvf apr-util-1.5.3.tar.gz cd apr-util-1.5.3 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config make && make install |
4.安装Subversion
早期的版本不需要有SQLite的支持,新版本的基本都需要了,所以先要处理一下SQLite。
1 2 3 4 5 6 |
wget http://www.sqlite.org/sqlite-amalgamation-3071501.zip unzip sqlite-amalgamation-3071501.zip mv sqlite-amalgamation-3071501/ sqlite-amalgamation/ #编译并安装Subversion ./configure --prefix=/usr/local/svn --without-berkeley-db --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/bin/apu-1-config make && make install |
5.验证安装
1 2 |
cd /usr/local/svn/bin svnserve --version |
出现以下内容表示安装正确。
svnserve, version 1.8.9 (r1591380)
compiled Jun 8 2014, 02:16:42 on i686-pc-linux-gnu
Copyright (C) 2014 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository back-end (FS) modules are available:
* fs_fs : Module for working with a plain file (FSFS) repository.
Cyrus SASL authentication is available.
compiled Jun 8 2014, 02:16:42 on i686-pc-linux-gnu
Copyright (C) 2014 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository back-end (FS) modules are available:
* fs_fs : Module for working with a plain file (FSFS) repository.
Cyrus SASL authentication is available.
6.添加环境变量方便使用
1 |
vim /etc/profile |
加入如下内容:
1 |
PATH=$PATH:/usr/local/svn/bin |
保存退出后,执行以下命令来让修改生效。
1 |
source /etc/profile |
配置SVN
1.配置版本库目录
1 2 |
mkdir -p /home/svn/repos svnadmin create /home/svn/repos |
2.编辑/home/svn/repos/conf/svnserve.conf
1 2 3 4 5 6 |
[general] anon-access = none auth-access = write password-db = passwd #用户密码文件 authz-db = authz #授权登录文件 realm = repos |
3.增加svn用户
1 2 |
useradd username passwd username |
4.修改/home/svn/repos/conf/passwd,添加用户名和密码
username=password #用户名=密码 一行一个
5.修改/home/svn/repos/conf/authz,用户权限控制
1 2 3 4 5 |
[groups] admin = svnuser [/] @admin = rw |
启动SVN
1 |
svnserve -d --listen-port 9999 -r /home/svn |
增加自启动
将上面的启动命令行添加到 /etc/rc.local即可。
利用svnadmin进行备份与还原
大D一直是在自己的笔记本电脑上搭建本地SVN来实现版本管理的,当然需要把本地的备份上传到VPS上,那么需要先给笔记本上的svn进行以下备份。
本章节说明最简单的备份和还原方法,自动备份、增量备份什么的以后再说。
备份
1 2 |
#svnadmin dump 版本库地址 > 备份文件名.dump 例子: svnadmin dump d:\svn > d:\svnbackup.dump |
还原
1 2 |
#svnadmin load 需还原的版本库地址 < 备份文件 例子:svnadmin load c:\svnroot\repos2 < c:\svnbak\repos1.dump |
版权声明
转载保留版权: 大D技研室 | 《给VPS装了个Subversion》
本文链接地址:https://www.dadclab.com/archives/4622.jiecao
转载须知:如果您需要转载本文,请将版权信息,版权授权方式,以及本文的链接地址注明,谢谢合作。
本文被贴上了: Linux , Subversion , SVN , VPS 标签
已有 1 条评论
发表评论
电子邮件地址不会被公开。 必填项已标注。
Pingback: 两个SVN服务器之间同步 « 大D的knowledge base