参考了下面的BLOG,在这里先谢谢EVAN的无私共享。
www.blogjava.net/evanwhj/archive/2006/04/06/39498.aspx
一,安装apache2.2和svn1.4.4的服务端
第一步,安装Apache2.2。
第二步,安装Subversion1.4.4 Server(目前最新版本);我使用的是svn-win32-1.4.4.zip,解压之后即可使用。
一般SVN与Apache整合,可以通过Apache的虚拟目录和安全控制,使用HTTP协议穿透防火墙,在实际开发环境中也是有作用的。
按照Evan的说法,我考虑再三后安装了纯JAVA编写的SVN Web Client,就是中文的显示还有一些问题,不过网上有相关的补丁,大家可以上去找找,也装了tortoiseSVN1.4.4,感觉都很不错。
SVNWebClient
二、整合
第一步,打开Apache安装目录下的httpd.conf文件
找到下面的语句:
#LoadModule dav_module modules/mod_dav.so
将上面语句前面的#去掉
第二步,在这句后面追加,如下语句:
LoadModule dav_svn_module "{svn安装目录}/bin/mod_dav_svn.so"
LoadModule authz_svn_module "{svn安装目录}//bin/mod_authz_svn.so"
注:{svn安装目录}就是svn-win32-1.4.4.zip解压后你放的目录
第三步,在这个文件的最后,追加如下语句:
<location svn=""></location><location></location><location></location><location></location>
DAV svn
SVNParentPath d:/svn
第四步,创建仓库
根据apache的配置文件的设置建立目录:d:/svn,然后用svnadmin create d:/svn/test命令创建仓库,命令执行成功之后,会在d:/svn/test下面生成很多的文件和目录。
第五步,运行
重新启动Apache Server
在浏览器中输入网址:
http://localhost/svn/test/
这时候,看到页面显示:
Revision 0: /
Powered by Subversion version 1.3.2 (r19776).
安装成功,接下来将进行权限设置。
三、svn权限设置
svn使用apache的权限管理对档案库及目录进行读写管理
修改上面第三步的内容为:
<location svn=""></location><Location "/svn" >
DAV svn
#SVNListParentPath on
SVNParentPath d:\svn
### apache auth begin
# how to authenticate a user
AuthType Basic
AuthName "Subversion repository"
AuthUserFile D:\Subversion\apache_authz (保存用户名和密码,这个文件需要用Apache的htpasswd工具创建)
Require valid-user
### apache auth end
### svn auth begin
# our access control policy
AuthzSVNAccessFile D:\Subversion\svn_authz (保存用户访问的权限策略)
# authentication if necessary
#Satisfy Any
### svn auth end
</Location>
用htpasswd工具创建apache_authz 文件,
建立保存用户名和密码的文件
htpasswd -cm D:\Subversion\apache_authz username1
-c 表示创建文件,-m表示对密码用md5加密
然后,会提示输入两次密码,以后再加用户就不需要用-c了,直接用-m即可。
下面建立控制用户访问权限的文件svn_authz
在D:\Subversion中新建一个记事本文件,输入下面的内容:
[groups]
test-developers = zxm
everyone = @test-developers
[test:/] //这表示,仓库test的根目录下的访问权限
@test-developers = rw
[test:/test] //test仓库下test目录的访问权限
@test-developers = rw // 如果在前面加上@符号,则表示这是个群组权限设置
r 表示读权限
w 表示写权限
好,配置完成,重新启动Apache server
在浏览器地址栏中再次输入:http://localhost/svn/test/
这次要输入密码才能进入,赶快试试吧。
这里顺便交代一下,svn1.4.4的服务端只支持apache2.2版本的,晕死,被N个版本的指导瞎指导了一通。
分享到:
相关推荐
<br><br>4、运行:<br>vss2svn.exe --encoding=gbk --vssdir \\VSS_IP\VSS_REPOSITORY<br><br>5、当运行出现最后一个任务时候,在你所在的盘符下就会自动出现一个文件名为 _vss2svn的文件夹和文件名为vss2svn-dump...
在IT行业中,Linux系统因...总之,Linux上的Apache与SVN整合提供了一种方便、高效的代码版本控制方式,对于团队协作和项目管理有着重要作用。通过以上步骤,你可以成功地在Linux环境中搭建起一个功能完善的SVN服务器。
<groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>${httpclient.version}</version> </dependency> <!-- 单元测试 --> <dependency> <groupId>junit</...
<groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat8-maven-plugin</artifactId> <version>3.0-r1655215</version> </plugin> ``` 但是,如果我们直接添加上面的依赖项,Maven 将无法找到该插件,...
4 增加/svn的<Location>,(假设通过extra/httpd-vhosts.conf配置了vhost,则在httpd-vhosts.conf的<VirtualHost>中) <Location /svn> DAV svn # 指向SVN Repository的ROOT SVNPath d:/svnrepo </Location>
svn帳戶管理及權限設置操作起來並不太方便。...<br>對應軟件為SVN1.4.6和Apache代理。<br>自己配置過上面兩軟件的朋友,下載我的工具後應當知道如何使用的。<br>源代碼全在裡面,不明白我可以發郵件問我。
该命令的基本语法为:svn checkout <路径>,其中 <路径> 是服务器上的目录。例如:svn checkout svn://192.168.1.1/pro/domain。 2. 往版本库中添加新的文件 svn add 命令用于将文件添加到版本库中。该命令的基本...
<groupId>org.apache.maven.plugins</groupId> <artifactId>maven-scm-plugin</artifactId> <version>1.12.3</version> <configuration> <connectionUrl>scm:svn:http://your-svn-repo-url</connectionUrl> ...
**命令**: `svn merge -r <m>:<n> <path>` - **功能**: 将两个版本之间的差异合并到当前文件。 - **参数**: - `<m>` 和 `<n>`: 版本号。 - `<path>`: 需要合并差异的文件路径。 - **示例**: `svn merge -r 200:...
`svnadmin create <repository>` 命令用于在指定位置创建一个新的SVN仓库。 2. **检出(checkout)** 使用`svn checkout <URL>` 或简写 `svn co <URL>` 将远程仓库的内容下载到本地工作副本。例如:`svn co ...
在开始Apache与Subversion(SVN)服务器的配置之前,确保已正确安装Apache Web服务器和Subversion。本指南将详细介绍如何在Windows环境下配置Apache与Subversion,以便通过Web方式访问版本控制系统。 **所需软件:*...
struts2演示<br><br>1./helloworld - helloworld<br>2./spring - 与spring整合<br>3./coc - 惯例优先配置,零配置文件 - codebehind不支持redirect,chain等操作,需要自己写jsp跳转<br>4./crud - CRUD,Create Read...
- **命令格式**:`svn checkout <path> (path是服务器上的目录)` - **示例**:`svn checkout svn://192.168.1.1/pro/domain` - **简写**:`svn co` **解释**:此命令用于将远程版本库中的文件或目录复制到本地...
配置项包括`groupId`、`artifactId`、`version`以及可选的参数,如`svnUrl`(如果你的项目不在默认的`<url>`标签下),`outputProperty`(用于指定存储修订号的系统属性名)等。 ```xml <build> <plugins> ...
LanguagePack_1.5.0.13316-win32-zh_CN.msi<br>TortoiseSVN-1.5.0.13316-win32-svn-1.5.0.msi<br>TortoiseSVN_zh_CN_中文帮助手册.chm<br>VisualSVN-1.5.msi<br>VisualSVN.v1.5.for.VS.Incl.Keymaker.And.Patch-...
本篇文章将详细介绍如何在 Windows 操作系统上安装和配置 Apache 与 SVN。 首先,我们需要准备的软件包有: 1. Apache HTTP Server 版本 2.2.16,文件名为 `httpd-2.2.16-win32-x86-no_ssl.msi`。 2. Subversion ...
此时,SVN会在冲突文件中插入特殊的标记,用户需要手动解决冲突,使用`svn resolved <文件名>`告知SVN冲突已解决。 ### 5. 修订版本(Revision) 每次提交都会增加一个修订版本号,用于追踪项目的演变历程。 ### 6...
关于svn与Apache整合以及svn一些常用问题的解决,