设为首页 收藏本站
查看: 759|回复: 0

[经验分享] 在windows下使用Apache搭建Subversion (一) 基础搭建 .

[复制链接]

尚未签到

发表于 2017-1-9 09:56:22 | 显示全部楼层 |阅读模式
  【下载内容】
  【文章简介】
  本文记录总结了在局域网内,使用windows+Apache搭建Subversion服务端的经历。
  【目录结构】

  • 准备工作
  • 搭建流程

    • Apache的安装
    • Subversion的安装
    • TortoiseSVN的安装
    • 建立版本库
    • 测试
    • 遗留问题

  【准备工作】
  在开始之前,需要准备以下几个软件的安装包:

  • Apache ( 本文里选用的是 httpd-2.2.22-win32-x86-no_ssl.msi )
  • Subversion ( 本文里选用的是 
    Subversion 1.7.3
    )
  • TortoiseSVN ( 本文里选用的是 Subversion 1.7.2 )
  【搭建流程】

  • Apache的安装 :

  •  

    • 这里没什么特别需要提醒的,只需要一直的点击next即可(因为没特殊的需求,因此并没特别的处理设置项);安装向导成功完成,这时右下角状态栏应该出现了下面的这个绿色图标,表示Apache服务已经开始运行,按“Finish”结束Apache的软件安装;
    • 修改Apache的监听端口:找到Apache的安装目录,打开conf目录下的httpd.config文件,搜索Listen,并将Listen后面的80改为9000(或者你希望的端口),保存并重启Apache即可。之所以修改监听端口,因为很多服务器会有多个不同的服务端,比如IIS等,避免端口冲突。
    • 测试:打开浏览器,浏览http://localhost:9000/ 来测试是否安装正确,如果是“it works!”的界面表示apache已成功启动。



  • Subversion的安装:

  •  

    • 一直点击next即可,直到安装向导完成。
    • 然后打开Subversion的安装目录(我举例为c:\Subversion),打开其bin子目录,然后将以下文件复制到apache安装目录下(我举例为c:\Apache2.2)的对应文件夹里,具体如下:  将c:\Subversion\bin目录下的”mod_dav_svn.so“与”mod_authz_svn.so“复制到c:\Apache2.2\modules 下,如果两个so文件已存在则忽略这步;
        将c:\Subversion\bin目录下的以下lib文件复制到c:\Apache2.2\bin目录下:
        intl3_svn.dll
      libdb48.dll
      libeay32.dll
      libsvn_delta-1.dll
      libsvn_fs-1.dll
      libsvn_subr-1.dll
      libsvn_repos-1.dll
      ssleay32.dll
    •  修改c:\Apache2.2\conf\httpd.conf 配置

  找到“Dynamic Shared Object”处,将
  #LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
  中的两个#去掉,即让Apache使用这两个模块
  
然后,加入:
  LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
  然后退出Apache再重启动Apache,你会发觉Apache的左下脚提示为:"Apache/2.2.22 (Win32) SVN/1.7.2 DAV/2",代表Apache与Subversion已集成。

  • TortoiseSVN的安装:

  •  

    • 不多说,直接Next到结束。
    • 如果你对英文界面不熟悉,可下载中文包。安装完中文包后使用 右键 >> TortoiseSVN >> Setting >> General >> Language >> 中文(简体)>> 应用 >> 确定。

 

  • 版本库
在任一安全的盘上(本文为E盘)新建一个目录(名字任取,本文目录名取为SvnRepositories);在 e:\SvnRepositories 下再建个项目目录( 版本库 , 本文里"myProject" ).然后使用 右键 >> TortoiseSVN >> 在此创建版本库 ,注意生成目录结构(标准目录,包括了分支,关键字等),可通过 版本库浏览 来对目录结构直接进行调整。
 
新建完版本库后,需要再次对 c:\Apache2.2\conf\httpd.conf  进行配置,在最后处加入虚拟目录配置文件:
#
# SVN 项目配置文件,格式:Include 配置文件名
#为每个虚拟目录设置一个配置文件,用Include命令加载
#
Include e:/SvnRepositories/myProject/conf/*.project
 
然后在 e:/SvnRepositories/myProject/conf 目录下创建myProject.project文件,使用记事本打开,增加如下内容:
 
# 虚拟目录,/svn/myProject可任意配置
<Location /svn/myProject>
#SVN项目名
DAV svn
#SVN项目的路径
SVNPath E:\SvnRepositories\myProject
#项目的名称
AuthName "TestProject"
#验证方式
AuthType Basic
#用户信息
AuthUserFile  E:\SvnRepositories\myProject\SvnAccount
#SVN项目的路径权限授权文件存放路径
AuthzSVNAccessFile E:\SvnRepositories\myProject\UserAccess.access
#对于所有用户都需要身份验证
Satisfy Any
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>
 
之后,同在e:/SvnRepositories/myProject/conf 目录下创建 SVN账号信息文件: SvnAccount ,具体如下:
在命令行下切换到$\apache group\apache2,执行bin\htpasswd -c E:\SvnRepositories\myProject\SvnAccount <username>,这里<username>是你想要加入 的用户名,比如doudou。之后会提示你输入并重复确认密码。
 
这命令的意识为: htpasswd -c 为创建个账号密码文件, E:\SvnRepositories\myProject\SvnAccount 为文件路径以及最后的文件名,可依你的意愿任意改动。
 
完成后,你可找到生成的E:\SvnRepositories\myProject\SvnAccount文件,用记事本打开,会发觉是账号名以及MD5的密码;如果需要继续添加,请改用
bin\htpasswd -mE:\SvnRepositories\myProject\SvnAccount <username>,即修改账号密码文件。-m :如果是新的账号,则新增账号信息;如果是已存在的账号,则修改密码。如果要删除一个账号,则使用大写的-D.
 
最后手动创建个权限文件:UserAccess.access文件( 使用记事本,后缀保存为.access即可 ),内如如下:
 
[groups]
AdminGroup = admin
ClientGroup = wangchangyong,liukeping
ServerGroup = server
ArtGroup = art
DesignGroup = zhouqi
PlanGroup = wangyi


[/]
@AdminGroup = rw
@ServerGroup = rw
wangyi = r

[/foo/bar]
admin = rw

[repository:/baz/fuz]
admin = rw 
其中,[groups]下的是定义组,语法为”组名=成员1,成员2......成员N "; 必须注意的是成员必须是有效的账号。
[/]表示拥有对根目录的操作权限,通常为r:read,w:write,None;rw表示可读写.语法为“账号名= 权限” 如果是组,则需要在组名前加入@
 
[/目录结构] 这里表示你自行设置的目录结构下的权限,如根目录,这里略过。

  • 测试
新建个目录,使用TortoiseSVN的检出测试,svn-url:http://你的IP地址:端口号/虚拟目录/trunk/你配置的目录

  • 遗留问题

本人使用过程里,遇到的问题,主要集中在新建MS Office的文件(如word,excel等),无法上传,仅能通过手动“版本库浏览器”中新添加Office文件,然后再让其他成员修改使用,如您有解决方案,请消息本人或直接跟帖,谢谢。
转自:http://blog.csdn.net/szwatson/article/details/7278858
DSC0000.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-325848-1-1.html 上篇帖子: 使用 Jackson JSON 处理器和 Apache Wink 下篇帖子: JAVA/JSP学习系列之三(Resin+Apache的安装)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表