windows上安装apache2.0.59+Subversion-1.3.1(整理)

阅读更多

为了统一进行文档与程序的版本管理,更好的使团队进行协同工作。对版本管理软件定为Subversion(一款开源的项目管理工具)。

以下关于apachesubversion相结合的服务器的安装与配置

一.windows上安装apache2.0.59+Subversion-1.3.1

OS: Windows XP SP2
1)
安装Apache Server
2)
安装SVN
3)
配置邮件通知

1.       安装apache_2.0.59-win32-x86-no_ssl.msi
安装过程中设置以下参数:
Network Domain: svn.company.com
Server name: svn.company.com
Administrator's Emai Address: [email protected]

安装到默认路径为D:\devtools\Apache2

2.       安装svn-1.3.1-setup.exe,安装到默认路径为D:\devtools\Subversion默认安装后,在apache的配置文件httpd.conf中会自动加入以下两行。
LoadModule dav_svn_module "D:/devtools/Subversion/bin/mod_dav_svn.so"
LoadModule authz_svn_module " D:/devtools/Subversion/bin/mod_authz_svn.so"
把这行的注释去掉
LoadModule dav_fs_module modules/mod_dav_fs.so

拷贝D:\devtools\Subversion\bin下的libdb43.dll到这个目录下Apache2\modules
打开apache的配置文件httpd.conf在末尾处加入以下参数:

< L*ocat*ion /s*vn>

DAV svn

SVNListParentPath on

SVNParentPath E:\svn-repository

AuthType Basic

AuthName "Subversion repositories"

AuthUserFile E:/svn-repository/test/passwd

#AuthzSVNAccessFile svnaccessfile

Require valid-user

< /L*oc*at*ion **>


保存。(在这里权限文件我不多讲了,大家多做实验就明白了)

建立仓库
打开CMD命令行界面,"开始" -> "运行" -> "cmd" -> "回车"
C:\ > d:   //
进入d(因为我们要在d盘下创建仓库)
e:\> md svn-repository   //
创建一个名叫svn-repository的目录
e:\> c:   //
进入C
C:\> cd\   //
退到C盘根目录
C:\ > cd D:\devtools\Subversion\bin  //
进入subversion/bin目录
D:\devtools\Subversion\bin> svnadmin create E:\svn-repository\test   //
svnadmin命令创建名为test的仓库(这条命令成功后,在test下会出现很多文件夹和文件)
D:\devtools\Subversion\bin> cd D:\devtools\Apache2\bin   //
进入apache\bin目录
D:\devtools\Apache2\bin> htpasswd -cm E:\svn-repository\test\passwd user1   //
htpasswd命令创建第一个用户(user1),同时生成密码认证文件,c参数为create,m参数为MD5加密方式
New password: ******                 //
输入密码
Re-type new password: ******           //
再次输入密码
Adding password for user test             //
加入用户成功
D:\devtools\Apache2\bin> htpasswd -m E:\svn-repository\test\passwd user2   //
htpasswd命令创建第二个用户(user2),注意如果在这时加入c参数会覆盖掉之前创建的用户及文件。
New password: ******
Re-type new password: ******
Adding password for user test 2   //
加入用户成功
重复以上述操作,添加所有用户。


重新启动apache,进行测试。
IE打开http://svn.company.com/svn,这时应该可以看到
Revision 0: /
--------------------------------------------------------------------------------
Powered by Subversion version 1.3.1 .    //
说明我们已经配置成功了

3.       关于权限的配置

4.       更改apache的配置文件httpd.conf在末尾处“AuthzSVNAccessFile”行的注释去掉,后边的参数使用绝对路径如:E:\svn-repository\svnaccessfile

< L*ocat*ion /s*vn>

DAV svn

SVNListParentPath on

SVNParentPath E:\svn-repository

AuthType Basic

AuthName "Subversion repositories"

AuthUserFile E:/svn-repository/test/passwd

AuthzSVNAccessFile E:\svn-repository\svnaccessfile

Require valid-user

< /L*oc*at*ion **>
(以上有关< /L*oc*at*ion **>的,去掉*使用)
各级目录的访问与修改权限参见下E:\svn-repository\svnaccessfile 如下:

#对用户进行分组,然后把组分配给每一个目录进行权限控掉。

[groups]

admin = admin        

devteam1 = user1

devteam2 = user2,user3

docs = user4

 

#admin组的成员对HealthPlatform库根目录有读的权限有读和写的权限,

# docs devteam1devteam2组的成员对HealthPlatform库根目录有读的权限,

#其它用户对HealthPlatform库没有读与写权限。

#其它目录的权限类同

[HealthPlatform:/]

@admin = rw

@devteam1 = r

@devteam2 = r

@docs = r

* =

 

[HealthPlatform:/docs]

@docs = rw

* = r

 

[HealthPlatform:/project]

@devteam1 = rw

@devteam2 = rw

@admin = r

* =

 

[test:/]

@devteam1 = rw

@devteam2 = rw

@admin = rw

* =

规划完权限后要重启apache.

 

a)         代码库初使化

D:\tmp>svn import tp http://svn.surpass.org/svn/test / --username admin --message "t

est"

认证领域: 893f93c3-004e-fc4f-a38a-7db494922394

admin”的密码:**********

新增           tp\test-dev

新增           tp\test-dev\readme.txt

新增           tp\readme.txt

新增           tp\test-test

新增           tp\test-test\readme.txt

 

提交后的修订版为 1

看到以上信息代码库初始化完成.

 

b)        从代码库中取出一个版本

D:\tmp>svn checkout http://svn.surpass.org/svn/test / --no-auth-cache --username admin

r

A    test\readme.txt

A    test\test-dev

A    test\test-dev\readme.txt

A    test\test-test

A    test\test-test\readme.txt

取出修订版 1

你可能感兴趣的:(subversion,Windows,SVN,配置管理,项目管理)