使用Apache设置Subversion存储库,使用自动更新工作副本
概述:
什么是Subversion?
Subversion是一个免费/开源版本控制系统。 也就是说,Subversion随着时间的推移管理文件和目录。 文件树放入中央存储库。 存储库非常像一个普通的文件服务器,除了它记住对你的文件和目录进行的每一次更改。 这可以让您恢复旧版本的数据,或查看数据更改的历史记录。 在这方面,很多人认为版本控制系统是一种“时间机器”。
Subversion可以通过网络访问其存储库,从而允许其由不同计算机上的人员使用。 在某种程度上,各种人员能够从各自的位置修改和管理同一组数据可以促进协作。 如果没有必须进行所有修改的单个导管,进度就会更快。 而且因为这个工作是版本化的,所以你不必担心质量是丢失这个渠道的权衡 - 如果对数据进行了一些不正确的改变,只需撤消这个变化。
一些版本控制系统也是软件配置管理(SCM)系统。 这些系统专门用于管理源代码树,并具有特定于软件开发的许多功能,例如本地理解编程语言,或提供用于构建软件的工具。 然而,Subversion不是这些系统之一。 它是一个可用于管理任何文件集合的通用系统。 对于您,这些文件可能是源代码,对于其他文件,从杂货购物清单到数字视频混合以及其他任何内容。
几乎每个Linux发行版都安装了一个标准的subversion。
存储库有两种格式:bdb(berkeley db database)和fsfs(fsfs数据库)。
在我们的例子中,我们使用FSFS数据库,并在/ usr / local / subversion / repository上创建存储库
SVN几乎没有为其用户提供服务的方法。 以下是一些例子:
1,SVN + SSH
2,SVN + Apache
3,SVNServe
在这种情况下,我们使用Apache方法。
Apache应该作为普通用户运行,而不是任何人。
我不会指导人们如何安装apache在这个怎么样。
以下是关于如何从源代码编译subversion的一步一步的指导,以及如何使用apache webserver设置一个存储库。
文件内容:
1,从源代码编译subversion及其依赖关系
2,为apache创建用户并修改httpd.conf
3,创建存储库
4,设置httpd.conf来提供创建的存储库
5,设置认证
6,添加SVN用户
7,设置初始版本库布局
8,设置工作副本
9,设置挂钩脚本
从源代码编译subversion及其依赖:
首先,我们需要从http://subversion.tigris.org/获取subversion的源代码及其依赖
我们需要的一些依赖是,
APACHE(Webserver)(源代码不包括在subversion依赖项中)
APR
APR-UTIL
氖
在设置apache webserver之后,我们需要编译APR和APR-UTIL。
通过从http://subversion.tigris.org/下载 tar tar来解压缩。
提取subversion源代码和subversion依赖源代码。
tar -jxvf subversion-x.x.x.tar.bz2
tar -jxvf subversion-deps-x.x.x.tar.bz2
cd subversion-x.x.x
现在我们先编译APR。
cd apr
./configure --prefix=/usr/local/apr
make
make install
cd ..
接下来我们将编译APR-UTIL。
cd apr-util
./configure --prefix=/usr/local/apr --with-apr=/usr/local/apr/
make
make install
cd ..
在完成APR和APR-UTIL之后,我们需要编译NEON。
cd neon
./configure --prefix=/usr/local/neon
make
make install
cd ..
最后,我们需要使用我们刚刚安装的所有支持来编译subversion。
./configure --prefix=/usr/local/subversion --with-apxs={Location where you installed apache}/bin/apxs --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-neon=/usr/local/neon/ --with-ssl
make
make install
为apache创建用户并修改httpd.conf:
groupadd apache
useradd -g apache -d /usr/local/apache2
安装apache后,我们需要将/ usr / local / apache2
中的所有文件的所有权设置为用户apache
。
chown -Rv apache.apache /usr/local/apache2
最后,我们需要设置Apache服务器将要运行的用户。
编辑默认配置文件,或者apache用于运行的任何配置文件。
我将假定配置文件是/usr/local/apache2/conf/httpd.conf。
vi /usr/local/apache2/conf/httpd.conf
找到它所描述的行。
User nobody Group #-1
使它看起来像这样。
User apache Group apache