Subversion集成Apache搭建svn服务器
更新时间:2023-03-29 11:29:01 阅读量: 建筑文档 文档下载
Subversion集成Apache搭建svn服务器 <一>.选择apache来管理Subversion原因:
Subversion从1.3.1版本就可以独立与apache来进行配置并使用:但用apache来管理
1.在管理服务器启动,重启,关闭方面方面
2.在用户安全方面apache在传输用户的时候用的是md5加密的方式而纯subversion采用的是明码传输.
所以首选还是apache来管理subversion (闲话少说开始吧!)^_^。
<二>. 准备:
A. apache_2.0.63-win32-x86-no_ssl.msi (用来管理svn服务器)
B. svn-1.4.5-setup.exe (svn服务端)
C . TortoiseSVN-1.4.7.11792-win32-svn-1.4.6.msi (svn客户端)
准备的三个软件,就可以开始安装了:
1. 首先安装apache,一般来说直接点下一步就可以了,在设置domain以及host的时候,设置为localhost就可以了,Email你可以填你自己的Email,也可以随便填一个.其中要注意的是你的电脑上80端口不能被占用,否则你的http服务是启动不起来的.
2. 安装svn-1.4.5-setup.exe,也很简单,一步一步点下步就可以了. 你可以到CMD下面去试一下svn这个命令,如果有输出,则说明安装成功了,如果提示svn 不是内部或外部命令,也不是可运行的程序或批处理文件。那就说明没有装好.
3. 安装TortoiseSVN直接按下一步就可以了.
<三>.配置:
两者都装好了以后,就开始配置:
4. 我们先在E盘下面建立一个目录叫svnroot,然后在svnroot下面再建立一个我们专门放我们工程的目录,比如叫MyProject.于是我们在f盘下面就有了这个一个文件夹:f:\svnroot\MyProject,然后我们用svnadmin的命令,使这个文件夹变成我们的数据仓库,打开
图CMD命令如下: svnadmin create f:\svnroot\MyProject 如:
5. 如果运行成功的话,什么也没有输出,这个时候,我们再来到MyProject文件夹下面,我们
会发现多了几个文件夹和文件,我们打开conf文件夹,然后再打开svnserve.conf文件,找到如下行# password-db = passwd,然后把它前面的#去掉,表示MyProject是需要密码验证的.
6. 既然MyProject是需要密码验证的那我们的密码文件在哪里呢?我们打开conf文件下的
passwd文件,它就是我们要找的密码文件. 在[users]下面加上我们需要启动的人员的用户和密码,比如
[users]
admin=123
admin1=123
这样的话,我们就启动了两个用户,一个叫admin,密码是123,一个叫admin1,密码是123.然后我们保存passwd文件.(注意大小写敏感的)。
7. 我们在建立一个access.auth文件用来进行文件管理: 再在里面填入如下内容:
[MyProject:/]
admin = rw
[MyProject:/mulu1]
admin=rw
admin1=r
上面配置说明只有用户admin对文件夹MyProject下的文件有读写的权利,文件夹MyProject下目录mulu1用户admin可以读写用户admin1只可以读.
8. 现在开始设置apache,使它能和subvertion一起工作:
首先来到Subersion的安装目录,进入它的bin目录,我们会发现如下两个文件:
mod_authz_svn.so (用来帮助apache对Subersion进行权限控制)
mod_dav_svn.so (用来帮助apache对Subersion进行用户管理)
我们把这两个文件复制一下,粘帖到apache的安装目录下的modules文件中,然后我们再打开apache安装目录下的conf文件夹,打开httpd.conf文件.增加如下两行:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
由于文件LoadModule dav_svn_module modules/mod_dav_svn.so需要文件LoadModule dav_module modules/mod_dav.so的支持,所以要确保下面这一行没有被注释,并且保证在LoadModule dav_svn_module modules/mod_dav_svn.so之前加载:
LoadModule dav_module modules/mod_dav.so
9. 下面我们要设置SVN的目录,以使我们的apache能知道访问不同的URL的时候,它去哪
里寻找这个URL所对应的SVN目录:
在httpd.conf文件中,增加如下内容:
<Location /svn/MyProject> #设计客户端访问的文件路径 它映射SVNPath
也就是说对外的访问路径为:http://ip地址/svn/MyProject 当然:/svn/MyProject可以改成你想要的路径
DAV svn
SVNPath f:/svnroot/MyProject # Subversion 版本库位于 D:\SVN
AuthzSVNAccessFile f:/svnroot/MyProject/conf/access.auth #设计访问的权限文件 Satisfy Any
Require valid-user
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile E:/svnroot/MyProject/conf/users.auth #设计访问的用户文件如不要的话,登录服务器就不需要用户名和密码
Require valid-user
</Location>
10. 添加完上面这些,我们会发现access.auth是我们刚才新建的,可是users.auth我们并没有
新建啊.怎么就把它加进去了.不要急,现在我们就来生成users.auth文件.当然你也可以生成其他的文件名,但必须和<location> AuthUserFile :</location>配置的文件名一样 进入cmd进到apache group/apache2/bin目录下 输入 htpasswd –cb users.auth admin 123 (htpasswd 是Svn服务器的一个命令 -cb表示创建并追加数据 users.auth表示创建并追加数据的目标文件 admin 123分别表示追加的用户名和密码)如图
:
而后在输入htpasswd –b users.auth admin1 123 把用户admin1追加到文件users.auth中,以为前面已经创建了文件users.auth现在不要-cb了只要-b就可以了.如要增加其他的用户按照此方法增加就可以了.把所有的用户都增加完以后把 users.auth复制到版本库的conf文件夹下 如图路径
:
到此为止,所有配置都已经完成!
<四>.测试:
11. 重新启动apache 在浏览器中输入http://localhost/svnroot/MyProject看到一个
版本为0的界面。那么恭喜你! 你配置成功了,如你再在客户端commit一个文件那么就可以看到一个版本号和文家的内容!^_^ 到此为止!不懂的欢迎加QQ:314500811
正在阅读:
Subversion集成Apache搭建svn服务器03-29
服务礼仪试卷(新)04-11
何新:美的分析03-08
新GREissue题目翻译03-29
新抗真菌药01-03
基坑围护合同新01-07
大人社发79号《关于印发大连市工伤认定工作规定的通知》01-30
2016护理新业务03-08
大学英语一(新)06-02
- 在担当责任中培养主人翁意识
- 疫苗信任危机下的自我救赎
- 2015年湖南省农村信用社招考复习资料
- 《草原》课外阅读:五月的青岛(老舍)
- 最低生活保障申请审批流程
- 2015年中央财经大学保险硕士考研经验汇总@才思
- 司法考试必备—民法笔记(4)
- 2012初级会计实务讲义--行政事业单位会计
- 论东北三省跨界民族非物质文化遗产保护方式
- M4735A-SHANGHAI除颤仪
- 《那一年,面包飘香》
- word上机操作基础试题
- 用双脚弹钢琴的人
- 关于学会感恩的作文
- 2014年一月货币基金BR收益排名
- 二年级语文下册《画风》教学设计及教学反思
- 公因数和最大公因数 0
- 水产用药常识及注意事项
- 通用电气对中国的借鉴意义
- 龙年束姓女孩大气雅致取名大全
- 搭建
- Subversion
- 集成
- 服务器
- Apache
- svn