首先确认SVN和APACHE的版本,1.4.3版本以下的SVN不支持2.2.X的APACHE。查看版本可以用yum info Subversion或者rpm -qa |grep Subversion。
以下为配置过程:
Subversion的建立与使用仓库使用
#mkdir /var/repos
在这里假设设置/var/repos目录下的svn1和svn2两个目录为仓库。
svnadmin create /var/repos/svn1
svnadmin create /var/repos/svn2
用root用户,在运行完这两个程序之后要将这两个目录的所有者权限更改为启动APACHE的用户,这样才能正常CheckIn,可以使用命令chown –R apache:apache /var/repos
修改Apache的配置文件httpd.conf:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule dav_module modules/mod_dav.so
LoadModule authz_svn_module modules/mod_authz_svn.so
默认没有mod_dav_svn.so的,使用yum install mod_dav_svn.i386
如果/etc/httpd/conf.d/subversion.conf存在,在这个文件中更改也是一样。LoadModule和下面的Location都可以在此文件中添加。
然后配置仓库:
<Location /svn>
DAV svn
SVNParentPath /var/repos
</Location>
然后,配置验证方式:
这里使用Apache的验证方式:
htpasswd -cm /etc/svn-auth-file Username1
然后,会提示输入密码,这里就加入了一个用户了,并且在/etc下创建了svn-auth-file文件。
然后再加别的用户可以用以下命令(也可作为修改密码来使用,实在不想要这几个用户了,删掉重建就是,不过要对应修改svn-access-file):
htpasswd -m /etc/svn-auth-file Username2
htpasswd -m /etc/svn-auth-file Username3
然后修改配置:
<Location /svn>
DAV svn
SVNParentPath /var/repos
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /etc/svn-auth-file
Require valid-user
AuthzSVNAccessFile /etc/svn-access-file
</Location>
下面,就要写这个svn-access-file文件了,它是用来控制用户访问仓库的权限的,我们把说明写在后面
[svn1:/] //这表示,仓库svn1的根目录下的访问权限
dl1 = rw // svn1仓库dl1用户具有读和写权限
dl2 = rw // svn1仓库dl2用户具有读和写权限
dl3 = r // svn1仓库dl3用户具有读权限
[svn2:/] //svn2仓库根目录下的访问权限
harry = r // harry用户在svn2仓库根目录下只有读权限
sally = // sally用户在 svn2仓库根目录下无任何权限
#[/] // 这个表示在所有仓库的根目录下
#* = r // 这个表示对所有的用户都具有读权限
#[groups] // 这个表示群组设置
#svn1-developers = harry, sally // 这个表示某群组里的成员
#svn2-developers = sally
#[svn1:/]
#@svn1-developers = rw // 如果在前面加上@符号,则表示这是个群组权限设置
将这个设置完成后。重启Apache,就可以通过
http://localhost/svn/svn1
http://localhost/svn/svn2
这两个URL来访问仓库了,当然,要受权限的限制,必须是合法用户才能访问且具有相应的权限
客户端的使用,可以通过许多客户端GUI软件来用。比如TortoiseSVN就很好用。
官方网址:http://tortoisesvn.tigris.org/
另注:
修改SELINUX权限
# chcon -R -h -u system_u -t httpd_sys_content_t /var/svn
注意:在SELINUX中,安全性得到了加强。如果不进行这样的修改,客户端访问时就会报错“Could not open the requested SVN filesystem.”。
可以关闭SELinux并打开防火墙关于Apache的端口。
分享到:
相关推荐
接着,编辑Apache的配置文件(通常是`/etc/apache2/httpd.conf`或`/etc/httpd/conf/httpd.conf`),添加以下内容来启用该模块和设置SVN仓库: ```apacheconf LoadModule dav_svn_module modules/mod_dav_svn.so ...
你可以从Apache官方网站获取,或者如果已经提供了压缩包文件"centos+svn1.8.9",可以解压并进入目录: ```bash tar -xvf centos+svn1.8.9 cd svn-1.8.9 ``` 配置编译选项,指定安装路径和启用HTTP/HTTPS支持。使用...
【标题】"svn+trac+apache (centos5.4)" 涉及到的是在 CentOS 5.4 操作系统上搭建一个基于Subversion(svn)版本控制系统,Trac项目管理工具以及Apache web服务器的集成环境。这个配置允许团队进行代码版本控制,...
5. **配置svn服务**:在CentOS中,通常使用Apache HTTPD服务器作为svn的前端,因此需要安装httpd和mod_dav_svn模块: ``` yum install -y httpd mod_dav_svn ``` 6. **创建svn仓库**:在适当的位置创建一个新的...
总之,配置SVN服务器涉及安装SVN软件、设置Apache模块、创建仓库、配置Apache配置文件以及管理用户权限。这是一项至关重要的任务,因为它确保了团队的协作效率和代码的版本控制。随着对SVN服务器配置的深入理解和...
总结,Linux下安装和配置SVN涉及安装相关软件包、配置Apache、创建仓库以及设置用户认证。过程中可能会遇到权限、网络或配置错误等问题,通过细致的检查和调试,都能找到合适的解决方案。记住,良好的文档和备份策略...
在Linux环境下,Subversion(简称SVN)是一个广泛使用的版本控制系统,用于管理源代码和其他文本文件的变更。这篇博文将详细介绍如何在Linux上配置SVN,以便团队成员能够协同工作,跟踪并管理代码的版本历史。 首先...
在`/etc/httpd/conf.d`或`/etc/apache2/mods-enabled`目录下,使用软链接启用`mod_dav_svn.so`和`mod_authz_svn.so`。 - Debian/Ubuntu: `sudo a2enmod dav_svn authz_svn` - CentOS/Fedora: `sudo systemctl ...
这篇博文将详细介绍如何在Linux环境下安装SVN。 首先,我们需要了解SVN的基本概念。Subversion是一个开源的版本控制系统,它的主要功能是跟踪文件和目录的更改,同时允许多人协作编辑同一份文件。通过SVN,用户可以...
在CentOS或Fedora中,使用: ```bash sudo yum install subversion ``` 安装完成后,我们需要创建一个SVN仓库。这通常在 `/var/svn` 目录下进行,但可以根据需求自定义位置: ```bash mkdir /var/svn/myrepo ...
如果是Fedora、CentOS或RHEL用户,使用`yum`或`dnf`。 2. **安装Subversion**:接着安装Subversion本身: 对于`apt-get`用户: ``` sudo apt-get install subversion ``` 对于`yum`或`dnf`用户: ``` sudo ...
2. **设置客户端**:配置客户端的SVN服务器URL,通常是`http://server_name/svn/repo_name`或`svn+ssh://server_name/path/to/repo`。 3. **连接仓库**:使用客户端工具进行checkout操作,将仓库内容克隆到本地工作...
**SVN在Linux下的安装与配置** Subversion(SVN)是一种版本控制系统,它用于管理文件和目录的变更历史,便于多人协作开发。在Linux环境下安装和配置SVN,可以帮助团队有效跟踪代码修改,合并冲突,并确保代码版本...
SVN1.6-rpm 是一个专为RPM(Red Hat Package Manager)格式系统设计的SVN版本,适用于基于RPM的Linux发行版,如CentOS、Fedora和Red Hat Enterprise Linux等。 SVN的核心功能包括: 1. 版本追踪:SVN能够记录每一...
如果是CentOS或Fedora,使用`yum`进行安装: ```bash sudo yum install httpd subversion mod_dav_svn sqlite ``` ### 二、配置SVN仓库 创建SVN仓库目录,例如在 `/var/svn` 下: ```bash sudo mkdir /var/svn ...
在Linux系统中,安装SVN通常涉及使用包管理器,如在Ubuntu或Debian上运行`sudo apt-get install subversion`,或者在CentOS或Fedora上使用`sudo yum install subversion`。对于服务器端,可以使用Apache HTTPD服务器...
如果没有,可以通过包管理器进行安装,例如在Ubuntu或Debian系统上运行`sudo apt-get install wget tar`,在CentOS或Fedora系统上运行`sudo yum install wget tar`。 离线安装SVN 1.8.17服务的主要步骤包括以下几点...
在CentOS或Fedora中,使用`sudo yum install subversion`或`sudo dnf install subversion`。 3. **MacOS系统安装**: 可以通过Homebrew安装,运行`brew install subversion`。 **二、SVN配置** 1. **创建版本库**:...
- **Linux**:在Linux上,SVN是通过包管理器安装的,例如在Ubuntu或Debian上使用`sudo apt-get install subversion`,在CentOS或Fedora上使用`sudo yum install subversion`。 - **macOS**:在macOS上,可以使用...