Linux中编译安装Subversion(SVN)客户端的教程
subversion(简称svn)是近年来崛起的版本管理软件系统,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
subversion是一个版本控制系统,相对于的rcs、cvs,采用了分支管理系统,它的设计目标就是取代cvs。互联网上免费的版本控制服务多基于subversion。
subversion的版本库可以通过网络访问,从而使用户可以在不同的电脑上进行操作。从某种程度上来说,允许用户在各自的空间里修改和管理同一组数据可以促进团队协作。因为修改不再是单线进行(单线进行也就是必须一个一个进行),开发进度会进展迅速。此外,由于所有的工作都已版本化,也就不必担心由于错误的更改而影响软件质量—如果出现不正确的更改,只要撤销那一次更改操作即可。某些版本控制系统本身也是软件配置管理系统(scm),这种系统经过精巧的设计,专门用来管理源代码树,并且具备许多与软件开发有关的特性—比如,对编程语言的支持,或者提供程序构建工具。不过subversion并不是这样的系统。它是一个通用系统,可以管理任何类型的文件集。
subversion 1.8中http客户端基于neon已经被移除,改用self。如果要支持http方式需要在安装svn前安装serf,安装serf推荐用serf-1.2.1,安装是./configure;serf-1.3.0安装是用scons(yum -y install scons)方式,安装serf-1.3.0后安装可能会报误,google没找到解决方法,如下报错
checking for serf-2 library... no
checking for serf-1 library... no
checking was serf enabled... no
an appropriate version of serf could not be found, so libsvn_ra_serf
will not be built. if you want to build libsvn_ra_serf, please
install serf 1.2.1 or newer.
configure: error: serf was explicitly enabled but an appropriate version was not found.
安装步骤:
(本文只基于lamp一键安装包环境部署好之后进行)
1. 安装apr、apr-unit
cd /root/lamp/source
#wget http://archive.apache.org/dist/apr/apr-1.4.8.tar.gz #lamp中已经下载
#wget http://archive.apache.org/dist/apr/apr-util-1.5.2.tar.gz
tar xzf apr-1.4.8.tar.gz
cd apr-1.4.8
./configure --prefix=/usr/local/apache
make && make install
cd ../
tar xzf apr-util-1.5.2.tar.gz
cd apr-util-1.5.2
./configure --prefix=/usr/local/apache
make && make install
cd ../
2. 安装serf-1.2.1
yum -y install expat-devel
wget http://serf.googlecode.com/files/serf-1.2.1.tar.bz2 #serf-1.2.1.zip是win版有问题
tar xjf serf-1.2.1.tar.bz2
cd serf-1.2.1
./configure --prefix=/usr/local/serf --with-apr=/usr/local/apache --with-apr-util=/usr/local/apache
make && make install
cd ..
3. 安装svn
tar xzf subversion-1.8.1.tar.gz
cd subversion-1.8.1
./get-deps.sh
./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache/bin/apxs \
--with-apr=/usr/local/apache --with-apr-util=/usr/local/apache --with-zlib \
--with-openssl --enable-maintainer-mode --with-serf=/usr/local/serf --enable-mod-activation
make && make install
cd ..
4. 检查是否安装成功
安装成功会在/usr/local/apache/conf/httpd.conf自己加入下面2行
loadmodule dav_svn_module /usr/local/subversion/libexec/mod_dav_svn.so
loadmodule authz_svn_module /usr/local/subversion/libexec/mod_authz_svn.so
检查svn是否支持http方式:
# svn --version
svn, version 1.8.1 (r1503906)
compiled aug 2 2013, 11:36:48 on x86_64-unknown-linux-gnu
copyright (c) 2013 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 access (ra) modules are available:
* ra_svn : module for accessing a repository using the svn network protocol.
- with cyrus sasl authentication
- handles 'svn' scheme
* ra_local : module for accessing a repository on local disk.
- handles 'file' scheme
* ra_serf : module for accessing a repository via webdav protocol using serf.
- handles 'http' scheme
- handles 'https' scheme
推荐阅读
-
Linux中编译安装Subversion(SVN)客户端的教程
-
如何运行openSUSE?Win10中安装SUSE Linux子系统的详细图文教程
-
Linux中安装Python的交互式解释器IPython的教程
-
在VMware中为Linux系统安装vmware tools的详解教程
-
如何运行openSUSE?Win10中安装SUSE Linux子系统的详细图文教程
-
Linux中安装Python的交互式解释器IPython的教程
-
Linux中Samba服务器的编译安装以及配置的宏的写法
-
Linux中编译安装Subversion(SVN)客户端的教程
-
VMware中linux环境下oracle安装图文教程(二)ORACLE 10.2.05版本的升级补丁安装
-
Linux下源码编译安装配置SVN服务器的步骤分享