`

使用Apache2.2和SVN1.6搭建SVN版本控制平台

阅读更多

1、安装Apache
直接安装Apache软件,在安装过程输入信息前两项Network Domain和Server Name中都输入localhost,下面那个email就随便了,如果机器安装了iis并且启动中,要先把iis服务停掉。否则会和apache的监听端口冲突的。
2、安装Subversion
注:如果是1.4.6版本则有exe二进制安装文件,而1.6目前只有source版,解压下来即可用.
3、集成Apache与subversion
第一步:
复制svn安装路径\bin中的文件mod_dav_svn.so和mod_authz_svn.so,将它们拷贝到Apache的modules目录下,复制SVN\bin\libdb44.dll、libeay32.dll、以及 ssleay32.dll到 Apache\bin下。
第二步:
使用记事本之类的文本编辑器编辑Apache的配置文件\conf\httd.conf做如下修改:
去掉以下行的注释(将开头的#删除):
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so
在LoadModule节的最后添加以下两行:
LoadModule dav_svn_module "C:/Program Files/Subversion/bin/mod_dav_svn.so"
LoadModule authz_svn_module "C:/Program Files/Subversion/bin/mod_authz_svn.so"
第三步:
在这个文件的最后,追加如下语句:
<Location /repository>
DAV svn
SVNParentPath D:/SVN/repository
</Location>
其中/repository是告诉Apache使用这个URI作为SVN的访问点,可以任选;下面D:/SVN/repository是SVN仓库的存储位置,也可以自己任选,但是这个目录一定要存在。
上面这种是多库的配置方式,对于单库,可以把SVNParentPath变成SVNPath。这两个啥区别?简单来说,多库就是下面可以有多个repository,比如可以用http://localhost/repository/repo01,http://localhost/repository/repo02来访问不同的repository,对应于D:/SVN/repository下面的子目录repo01,repo02,而单库只能用http://locahhost/repository/,来访问唯一的repository。
    心急的人现在可能就去访问这几个link了,是不是结果让你失望啊?因为我们还没有建立repository,当然不能访问, 建立的方法是用SVN安装目录\bin下面的svnadmin.exe,在命令行输入“svnadmin create D:/SVN/repository/repo01”,就建立了repo01,然后重启Apache,再访问http://localhost/repository/repo01,是不是看到了“Revision 0: /”?这说明版本库已经开始运作了(初始版本0)。
4、基本认证和权限控制
SVN repository成功跑起来,你的repository总要搞个用户名密码?此外 你可能还需要给不同的帐户或角色在不同的目录上赋予不同的权限(只读、可写。
更改第三步中的设置
<Location /repository>
DAV svn
SVNParentPath "D:/SVN/repository"
AuthType Basic
AuthName "your-name's subversion repository"
AuthUserFile "D:/SVN/svn_auth"
Require valid-user
</Location>
    红色这几行就是我们要的,其中AuthName随便写问题不大,那个AuthUserFile也随便放,里面存的是用户名和密码。注意这个文件是 Apache生成的,可不是你随便建立个文本文件把用户名密码写进去就OK:) 具体是用Apache的htpasswd命令:
htpasswd -c filename username                #新建一个password file,并写入username的信息,回车后提示你输入密码
htpasswd filename username                #在当前password file里面追加一个username的信息
    这一步做好后,重启Apache,再用浏览器访问你的repository,是不是提示你输入用户名和密码了
    基本的认证就是这样,接下来是权限。还是照例先改httpd.conf:
<Location /repository>
DAV svn
SVNParentPath "D:/SVN"
AuthzSVNAccessFile "D:/SVN/svn_rule"
AuthType Basic
AuthName "your-name's subversion repository"
AuthUserFile "D:/SVN/svn_auth"
Require valid-user
</Location>

这个svn_rule是啥?其实就是个文本文件,这里没加扩展名是Unix的风格, 这个文件里定义了每个帐号或者每个角色可以干什么。看几个例子:
[repo01:/]
user1 = rw
user2 = r
对于多库,定义其中的一个repo01下的所有目录,允许user1读写,user2只读
[repo01:/Project1]
user1 = rw
user2 = r
和上面类似,只不过规定细化到了子目录:)
[/Project1]
user1 = rw
user2 = r
这个说的是单库的情况:)
[groups]
admin = user1, user3
readonly = user2, user4

[repo01:/]
@admin = rw
@readonly = r
这个就是设定角色了,和前面的区别主要是有了group,然后group的名字前面有@,为了和用户名区分。

 

分享到:
评论

相关推荐

    apache2.2 与 svn1.6 整合所需要的 svn module 文件

    2 复制附件解压后里面的*.dll和*.so到%APACHE_HOME%\modules 3 修改%APACHE_HOME%\conf\httpd.conf,增加或修改: LoadModule dav_module modules/mod_dav.so LoadModule dav_fs_module modules/mod_dav_fs.so ...

    apache2.2+svn1.5.3搭建版本控制服务器.doc

    通过上述步骤,我们可以成功地在本地环境中搭建起基于Apache2.2和SVN1.5.3的版本控制系统服务器。此服务器不仅支持基本的版本控制功能,还提供了用户管理和权限控制等高级特性,非常适合中小规模项目团队使用。希望...

    linux下apache2.2.23+svn1.6

    在Linux环境下,构建一个SVN(Subversion)代码服务器,特别是使用Apache2.2.23作为前端Web服务器,Subversion1.6作为版本控制系统,是开发者常用的实践。以下是搭建这个环境的详细步骤: 首先,确保你的Linux系统...

    Apache2.2+svn1.6.6 在windows环境安装配置版本控制的环境

    Apache2.2+svn1.6.6 在Windows环境下配置版本控制主要涉及到以下几个关键知识点: 1. **Apache HTTP Server 2.2**:Apache HTTP Server是广泛应用的Web服务器,用于托管网页内容。在这个环境中,Apache将作为...

    Trac0.12+SVN1.6+Apache2.2在windows下的配置说明

    在本文档中,我们将探讨如何在Windows环境下配置Trac 0.12、Subversion (SVN) 1.6和Apache 2.2。Trac是一个开源的项目管理工具,它集成了版本控制系统(如SVN)和一个Web界面,提供了问题跟踪、文档管理和源代码...

    SVN1.6客户端汉化包

    SVN(Subversion)是Apache软件基金会开发的一款版本控制系统,用于管理软件项目中的源代码、文档等文件的历史版本。SVN1.6客户端汉化包是专为那些不熟悉英文界面的用户设计的,它提供了中文语言支持,帮助用户更好...

    SlikSvn1.6所有版本,免安装

    SlikSvn1.6是该软件的一个特定版本系列,提供了一种无需安装的便携式解决方案,使得用户可以方便地在不同的计算机上使用或共享SVN服务,而不会留下任何系统级别的痕迹。 SlikSvn1.6的免安装特性意味着你可以直接...

    svn1.6和1.8MyEclipse10插件

    SVN(Subversion)是一种广泛使用的版本控制系统,用于管理软件项目的源代码和其他文件。它允许团队成员协同工作,跟踪每个更改的历史记录,并在必要时回滚到以前的版本。MyEclipse是流行的Java集成开发环境(IDE)...

    SVN1.6-rpm

    SVN1.6-rpm 是一个专为RPM(Red Hat Package Manager)格式系统设计的SVN版本,适用于基于RPM的Linux发行版,如CentOS、Fedora和Red Hat Enterprise Linux等。 SVN的核心功能包括: 1. 版本追踪:SVN能够记录每一...

    xp+apache2.2+subversion1.6.17搭建版本控制服务器

    本教程将详细讲解如何在Windows XP操作系统上,利用Apache2.2和Subversion 1.6.17搭建一个版本控制服务器。 首先,我们需要安装Subversion。文件"Setup-Subversion-1.7.5.msi"是一个Subversion的安装程序。运行这个...

    svn1.6安装包和教程

    这个版本的客户端和服务器端安装包将使你能够在Windows环境下搭建和使用SVN。 二、SVN客户端 1. 安装:客户端是开发者用来与版本库交互的工具,你可以按照提供的教程进行安装。一般步骤包括下载安装文件、运行安装...

    svn 1.6 服务端

    svn 1.6 服务端svn 1.6 服务端svn 1.6 服务端

    svn1.6

    9. **Windows平台优化**:Slik SVN 1.6针对Windows环境进行了优化,提供了更友好的用户界面和更稳定的运行环境。 通过这些改进,Slik SVN 1.6为Windows开发者提供了更强大、更可靠的Subversion支持,使得版本控制...

    svn1.6 eclipse 插件

    SVN(Subversion)是Apache软件基金会开发的一款版本控制系统,用于管理软件项目中的源代码、文档等资源。Eclipse是一款著名的开源集成开发环境(IDE),它支持多种编程语言,包括Java、C++、Python等。当开发者在...

    最新版本svn1.6插件

    SVN(Subversion)是一种广泛...这个过程确保了Eclipse能够识别并使用SVN1.6插件,使得开发者可以在Eclipse环境中无缝地进行版本控制操作。通过这种方式,开发团队可以更高效地协同工作,保持代码的一致性和完整性。

    svn1.6详细的标题

    在SVN1.6这个版本中,它提供了一套高效且稳定的版本管理机制,让团队协作开发变得更加有序和高效。下面将详细介绍SVN1.6中的关键知识点。 1. 版本库管理:SVN1.6的核心是版本库,它存储了所有文件的历史版本。用户...

    官网Apache2.2

    Apache HTTP Server,...在Windows环境中配置Apache 2.2+SVN 1.6.6,可以搭建一个高效且安全的版本控制系统,便于团队协作和项目管理。这个压缩包提供了在Windows上快速部署该环境的资源,只需按照上述步骤进行即可。

    Windows下SVN 1.6 服务端和客户端安装与配置

    ### Windows下SVN 1.6 服务端和客户端安装与配置 #### 一、软件下载 ...通过以上步骤,您应该能够在Windows环境下成功搭建并使用SVN 1.6的服务端和客户端了。这些基础知识对于日常的版本管理和团队协作至关重要。

    svn 1.6 客户端

    总的来说,svn 1.6客户端是软件开发团队协作的重要工具,它提供了一套完善的版本控制机制,而VisualSVN Server和中文语言包则进一步优化了用户体验,使得在Windows环境中部署和使用svn更加便捷。尽管目前svn已经发展...

    svn服务端1.6版本

    SVN,全称为Subversion,是一种广泛使用的版本控制系统,用于管理软件项目的源代码和其他文件的变更历史。在本文中,我们将深入探讨SVN服务端1.6版本的特点、功能以及如何进行安装和配置。 SVN 1.6是Subversion的一...

Global site tag (gtag.js) - Google Analytics