转载自:http://www.cublog.cn/u/31179/showart_1387424.html 有修正
Subversion有两种运行方式,一种是基于Apache Http Server,另外一种是Subversion Standalone Server。下面我讲解的是基于Apache Http Server的Subversion,这样做几个好处
A.能使用WebDAV协议。
B.能使用浏览器作为客户端工具浏览源码仓库。
C.可以很容易的支持到SSPI(Windows域认证)和LDAP(AD?),这些都是Apache本身就支持的。
D.能得到比较完善的Apache安全认证系统,比如SSL加密连接。
2.svn安装
安装系统:CentOS
安装方式:yum install(这种方式比较简单,如果用源码安装容易产生版本兼容的问题)
建议:
最好将svn系统安装在Linux操作系统环境下,这样一来系统比较的稳定可靠,同时也可以减少很多的病毒和攻击的服务器日常维护工作量,我将svn安装在了CentOS的服务器版本下。
安装:
yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
确定已经安装了svn模块:mod_dav_svn
#cd /etc/httpd/modules
#ls | grep svn
mod_authz_svn.so
mod_dav_svn.so
如果要确认是否成功的安装了svn可以通过如下的命令进行验证:
svn --version
显示如下,表示正常:
svn, version 1.1.4 (r13838)
compiled Aug 21 2005, 20:56:55
Copyright (C) 2000-2004 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository access (RA) modules are available:
* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.
- handles 'http' schema
- handles 'https' schema
* ra_local : Module for accessing a repository on local disk.
- handles 'file' schema
* ra_svn : Module for accessing a repository using the svn network protocol.
- handles 'svn' schema
3.apache的配置
配置/etc/httpd/conf/httpd.conf
(httpd的安装目录,一般是/etc/httpd或/usr/local/appache2)
进入到/etc/conf目录下用vim打开httpd.conf配置文件进行选项的修改:
a. KeepAlive选项(可选)
该选项可以修改也可以不修改,主要是为了提高http协议访问的性能,可以
使得svn仓库的访问更快,KeepAlive表示可以保持http的永久性TCP连接,
省去了每次都需要进行重建TCP连接的巨大开销,找到如下几个选项并修改:
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
b. ServerAdmin/ServerName选项(可选)
对于需要对系统进行管理的可以在ServerAdmin选项设置成为管理员的email
地址,这样在出现问题时apache会自动发送邮件到该地址中;而ServerName
必须设置为本服务器的域名,如xxx.xxx.cn:80。
为了使客户端能够通过Apache来访问SVN档案库,Apache需要加载一个特殊的模块mod_dav_svn。如果您的Apache是按照与预设目录安装的,mod_dav_svn 模块应该会安装在 Apache 安装位置 (默认路径是 /etc/httpd) 的 modules 子目录内。同时在Apache的配置文件httpd.conf(默认路径为/etc/httpd/conf/)中已经使用LoadModule指令加载了该模块(如果没有,请手动添加)LoadModule 指令的语法很简单, 就是将一个具名模块对映到共享链接库在磁盘上的位置:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
测试Apache是否可以正常启动:
#vim /etc/httpd/conf/httpd.conf -- Edit what you need and save the file
#service httpd start
#chkconfig httpd on
在浏览器中访问:http://localhost, 如果能看到Apache的页面,则说明Apache已经正常启动。
Apache命令:
启动:apachectl -k start
关闭:apachectl -k stop
重启:apachectl -k restart
查看日志:tail -f /etc/httpd/logs/error-log
4.svn的配置
进入到/etc/httpd/conf.d目录下用vim打开subversion.conf配置文件进行选项的
修改:
a. module的配置
一定要保证下面的两句话存在于配置文件中,否则无法在如svn的模块,就
无法访问svn的仓库了:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
b. 仓库目录配置
项目仓库就是用于存放项目目录结构的服务器目录,一般情况下Linux的规则时间容易变化的内容存放在/var目录下,所以我们需要在/var目录下创建一个svn目录,这样所有的项目的根目录都作为/var/svn/目录下的一级子目录了,这样以来就可以在一个仓库目录下存放多个项目了。
下面将使用myapp这个仓库来配置Subversion
# mkdir -p /var/svn
# cd /var/svn
# svnadmin create myapp
# chown -R apache.apache myapp
# vi /etc/httpd/conf.d/subversion.conf
加入以下配置
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /var/svn
#
# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /var/svn/passwd
Require valid-user
# </LimitExcept>
</Location>
下面建立可访问用户文件
# htpasswd -c /var/svn/passwd justin
要增加用户,则使用下面命令
# htpasswd /var/svn/passwd other
重起Apache
Subversion部分安装完成,打开浏览器访问http://localhost/svn/myapp即可看到效果。
分享到:
相关推荐
2. **SVN (Subversion)**:SVN 是一个版本控制系统,用于跟踪文件和目录的更改,便于多人协作开发。它允许开发者回滚到先前的版本,查看历史变更,并管理代码库。 3. **安装 SVN**:在 CentOS 7 中,可以通过 `yum`...
4. 在引导菜单中,选择“Install CentOS 7”(安装 CentOS 7)并按下回车键。 5. 进入安装程序后,您需要选择安装语言、时间和货币格式等选项。 6. 接下来,您需要选择磁盘分区。如果您不确定如何进行分区,请选择...
centos 7.9服务器 离线 搭建svn服务器 ,该文章适用于 开发人员 实施人员 项目经理用于项目文档管理 代码管理,而不指定如何在centos7.9环境下离线搭建svn服务器,因为大多数的网站只是介绍yum install 的方式,但是...
把手一步步离线搭建svn服务器,centos离线搭建svn服务器,linux离线搭建svn服务器。
CentOS系统中的SVN(Subversion)离线安装是一个对网络环境依赖较低的部署方式,尤其适用于网络条件不佳或者安全要求较高的环境。SVN是一种版本控制系统,用于管理代码和其他文件的变更历史,对于团队协作开发至关...
教程:CentOS更换内核,提供锐速可用的内核下载教程:CentOS更换内核,提供锐速可用的内核下载教程:CentOS更换内核,提供锐速可用的内核下载教程:CentOS更换内核,提供锐速可用的内核下载
在CentOS操作系统中安装SVN(Subversion)服务器,需要遵循一系列步骤来确保所有依赖项正确安装并配置。以下是详细的安装过程: 1. **安装依赖库** 首先,我们需要安装SVN所需的依赖库,包括apr(Apache Portable ...
在 `/var/svn` 目录下创建一个新的仓库: ```bash sudo mkdir /var/svn sudo svnadmin create /var/svn/myrepo ``` 这里,`myrepo` 是仓库的名称,你可以根据实际需求进行更改。 **三、配置SVN权限** 为了控制...
导入工程初始文件,可以使用 svn import 命令,例如:svn import /home/user/project file:///source/svn/project -m init project。 4. 配置工程用户 需要配置工程用户,首先需要进入工程的配置目录 cd /source/...
CentOS6 yum 源:centos6_base.repo
### CentOS 7 下 SVN Server 的安装与配置 #### 一、前言 Subversion (SVN) 是一种广泛使用的版本控制系统,它可以帮助团队管理和跟踪项目的变更历史。在 CentOS 7 环境下搭建 SVN 服务器可以为开发团队提供一个...
总之,这个“CentOS SVN离线安装包”为CentOS用户提供了一种在没有网络连接的情况下安装和使用Subversion的途径,这对于某些特定环境非常有用。安装和使用过程中,用户需遵循上述步骤,并确保满足所有必要的依赖和...
rapidsvn安装所需的全部资源包,可离线安装(gtk2和openssl的rpm包只上传了centos7版本) apr-1.5.2.tar.gz apr-util-1.5.4.tar.bz2 neon-0.29.6.tar.gz(可选,neon是subversion解析web http协议的包,视subversion...
你可以从Apache官方网站获取,或者如果已经提供了压缩包文件"centos+svn1.8.9",可以解压并进入目录: ```bash tar -xvf centos+svn1.8.9 cd svn-1.8.9 ``` 配置编译选项,指定安装路径和启用HTTP/HTTPS支持。使用...
在CentOS Linux环境下搭建Subversion (SVN) 服务器是一种常见的版本控制系统部署方案。它能够有效地管理代码库,为团队提供版本控制功能,便于协作开发。本文档将详细介绍如何在CentOS系统上快速部署并配置SVN服务器...
标题中提到的“Centos7.6镜像文件:CentOS-7-x86_64-DVD-1810.iso”,首先需要明确几个关键词。CentOS 是一个企业级 Linux 发行版,它是基于 Red Hat Enterprise Linux (RHEL) 源代码编译而成的。CentOS 7.6 指的是 ...
在一个合适的目录下创建SVN仓库,例如 `/var/svn`: ``` sudo mkdir /var/svn sudo chown -R apache:apache /var/svn ``` 使用`svnadmin`工具创建仓库: ``` sudo svnadmin create /var/svn/myrepository `...
在Linux系统中,尤其是CentOS,Subversion(简称SVN)是一种广泛使用的版本控制系统,用于管理软件项目的源代码。这篇文章将详细介绍如何在CentOS上安装和配置SVN,包括可能出现的问题及解决方法。 首先,安装SVN最...