svn和apache

来源:互联网 发布:一个域名有多少ip 编辑:程序博客网 时间:2024/06/13 10:39

我用的版本是

Setup-Subversion-1.6.6.msi

httpd-2.2.15-win32-x86-openssl-0.9.8m.msi

 

安装后

 

复制D:\svn\Subversion\bin下的mod_authz_svn.so和mod_dav_svn.so到D:\svn\Apache2.2\modules下

修改D:\svn\Apache2.2\conf\httpd.conf

 

查找LoadModule dav_modulemodules/mod_dav.so,将其前的#删

查找LoadModule dav_fs_modulemodules/mod_dav_fs.so,将其前的#删

查找#LoadModulevhost_alias_module modules/mod_vhost_alias.so,在其下面加上

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

 

在文件最下方加上

<Location /svn/>
Dav svn
SVNParentPath "D:/svn/repository"
AuthType Basic
AuthName "qiyong"
SVNListParentPath on
AuthUserFile "D:/svn/userfile.txt"
AuthzSVNAccessFile "D:/svn/accessfile.txt"
Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/

 

创建版本库

进入Dos命令,进入到D:/svn/repository下,执行命令svnadmin create project

 

创建userfile.txt和accessfile.txt

因为用到的是apache的命令要把D:\svn\Apache2.2\bin添加到path

生成userfile.txt,进入Dos命令,进入D:\svn目录,执行 htpasswd -c userfile.txt user1,要求输入New password 和 Re-type new password,user1为用户名

追加一个用户,用户名为user2,执行htpasswd userfile.txt user2,注意:此命令区别上面的命令没有-c,-c为新建一个文件

创建accessfile.txt,在D:\svn下创建文件accessfile.txt,内容

[/]
#*=r
qiyong=rw
[qiyongProject:/]
qiyong=rw
test=rw
[TestProject:/]
#test=rw
[TestProject:/justTest]
test=rw

 

完毕!!!

 

补充

强制注释方法

windows下

在版本库repository中添加文件hooks\pre-commit.bat:
 
@echo off
setlocal
set REPOS=%1
set TXN=%2
rem check that logmessage contains at least 10 characters
svnlook log "%REPOS%" -t "%TXN%" | findstr ".........." > nul
if %errorlevel% gtr 0 goto err
exit 0
:err
echo Empty log message not allowed, at least 10 characters. Commit aborted! 1>&2
exit 1

 

再补充 ,关于eclipse插件的使用

http://subclipse.tigris.org/ 找到合适的subclipse 我用的svn是1.6.6,所以下载的是1.6.18的版本

关于上传源代码工程,可以上传.project和.classpath文件和.settings,这样在用eclipse直接从svn检出项目时,自动默认项目配置,svn目录名可随意写

原创粉丝点击