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

[经验分享] Apache+SVN+花生壳

[复制链接]

尚未签到

发表于 2017-1-1 06:18:00 | 显示全部楼层 |阅读模式
  一、软件准备
  1.APACHE(apache_2.2.14-win32-x86-no_ssl.rar)*附件里有
  2.Subversion SVN服务端(Setup-Subversion-1.6.6.msi)*附件里有
  3.TortoiseSVN SVN客户端(TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi)*太大个了,网上去下吧,传不上来
  4.LanguagePack_1.6.6.17493-win32-zh_CN.msi 语言包*附件里有
  5.SVNService.zip 用于建立windows服务(可选)*附件里有
  
  二、安装
上面的 1 、 2 、 3 、 4 均为直接安装即可,注意在安装完 3 再安装四的时候要重启一下,然后将 5 解压到 2 中安装目录下的 bin 目录中。
  我的安装目录是“D:\SVN\Subversion”,那么SVNService.exe就放到“D:\SVN\Subversion\bin”下面就是。 
    找到 Subversion 安装目录下的以下文件:
  bin/mod_authz_svn.so
bin/mod_dav_svn.so
  
复制到 Apache 安装目录下 modules 目录中
  bin/intl3_svn.dll
bin/libdb*.dll
  
复制到 Apache 安装目录下 bin 目录中(这里似乎并不是必须的,我猜想这里或许是为了支持 Berkeley DB 而所作的操作,但我并不打算深入研究下去)

  三、创建版本仓库
  1.新建一文件夹作为总的“版本基地”如“D:\SVN\svnAllproject”。然后在下面建立一个版本仓库。如“D:\SVN\svnAllproject\enterprise”,然后右键“enterprise”文件夹,选择TortoiseSVN---》create repostory here。 然后一个版本仓库就建立好了。
  2.进入“D:\SVN\svnAllproject\enterprise\conf”进行配置。具体配置见附件config.rar
  
  四、创建SVN服务和启动服务 
  1.创建服务
  DOS窗口下
  D:\SVN\Subversion\bin>SVNService -install -d -r D:\SVN\svnAllproject
  或者D:\SVN\Subversion\bin>svnserve -d -r D:\SVN\svnAllproject(和上面差不多)
  2.启动服务
  直接进入服务“运行”----》services.msc
  启动“SVNService”服务。
  3.导入需要版本控制的项目,如“E:\workspace\enterprisesys”这个项目需要版本控制了。 右键“enterprisesys”文件夹然后TortoiseSVN---》import..---》url中"http://localhost/repository/enterprise/"这样就可以了。
  
  五、ApacheSVN 服务器教程(转载)
  
Subversion的设计包括一个抽象的网络层,这意味着版本库可以通过各种服务器进程访问。理论上讲,Subversion可以使用无限数量的网络协议实现,目前实践中存在着两种服务器。
?        SVNServer:svnserve是一个小的(也叫轻型的)、独立服务器,使用自己定义的协议和客户端。(作者注:以下称这种服务器为“svnserver服务器”,上面的安装配置就是安装svnserver服务器。)
?        ApacheSVN:Apache是最流行的web服务器,通过使用mod_dav_svn模块,Apache可以访问版本库,并且可以使客户端使用HTTP的扩展协议WebDAV/DeltaV进行访问。(作者注:以下称这种服务器为“ApacheSVN服务器”)

通过 Http 协议访问版本库是 Subversion 的亮点之一。ApacheSVN服务器具备了许多svnserve服务器没有的特性,使用上更加灵活,但是有一点难于配置,灵活通常会带来复杂性。

由于 Subversion 需要版本化的控制,因此标准的 Http 协议不能满足需求。要让 Apache 与 Subversion 协同工作,需要使用 WebDAV(Web-based Distributed Authoring and Versioning:)Web 分布式创作和版本控制)。WebDAV 是 HTTP 1.1 的扩展,关于 WebDAV 的规范和工作原理,可以参考 IETF RFC 2518 (http://www.ietf.org/rfc/rfc2518.txt)。
  
  六、Apache配置
修改Apache的配置文件 httpd.conf ,使用LoadModule来加载mod_dav_svn模块。

去掉#LoadModule dav_module modules/mod_dav.so前面的“#”号。

添加:
LoadModule dav_svn_module modules/mod_dav_svn.so

一定确定它在 mod_dav 之后。

现在你已经设置了Apache和Subversion,但是Apache不知道如何处理Subversion客户端,例如TortoiseSVN。为了让Apache知道哪个目录是用来作为Subversion版本库,在httpd.conf 配置文件最后添加如下几行:

<Location /repository>
  DAV svn
  SVNParentPath D:/SVN/svnAllproject
</Location>

这个配置告诉Apache首先需要启用 dav_module,然后加载 dav_svn_module 。版本库对外的URL是:
  http://服务器IP/repository ,所有的Subversion版本库在物理上位于D:/SVN/svnAllproject。
配置完毕后重新启动 Apache,打开浏览器,输入 http://服务器IP/ repository +"具体的版本仓库" 如
  http://服务器IP/ repository/enterprise
  *httpd.conf 具体配置见附件httpd.rar
  现在你的版本库任何人都可以访问,并且有完全的写操作权限。也就是说任何人都可以匿名读取,修改,提交,以及删除
显然大部分场合这是不符合需求的。那么如何进行权限设置呢,Apache 提供了基本的权限设置:
  *权限控制待续中加入,我自己还没弄权限的。现在通过局域网是能访问了,现在配置花生壳。
  
  七、花生壳+路由器配置
  我用的是D-Link 进入虚拟服务器配置
  名称 svn服务器
  个人 IP 地址 192.168.0.100
  协议模式 TCP
  私有服务端口 8080
  公用服务端口 8080
  这样路由器的配置搞定
  花生壳申请完有个免费域名然后启动花生壳
  现在可以通过外网进入SVN服务器了。http://“你花生壳的免费域名”:8080/repository/enterprise
  八、权限(具体配置见httpd.conf)
  使用 Apache 安装目录下的 bin/htpasswd.exe 可执行文件生成授权文件
  第一次生成,使用 -cb 参数:
  htpasswd -cb [filename] [username] [password]
  
例如:
  htpasswd -cb passwd.apache islee 123
  
添加新用户,使用 -b 参数:
  htpasswd -b passwd.apache another 456
  
将生成的 passwd.apache 文件移动到 D:\SVN\svnAllproject\enterprise\conf目录下
  如:
  a) 配置单项目
  在Apache的conf/httpd.conf文件,在末尾添加以下内容
  #配置虚拟目录
<location /svn/enterprise>
#引用远程访问模块
DAV svn
  #版本库路径
SVNPath D:\SVN\Repositories\iSLeeBlog
  #授权文件
AuthzSVNAccessFile D:\SVN\svnAllproject\enterprise\conf\authz
  #所有用户都需要身份验证
Satisfy Any
Require valid-user
  #验证方式
AuthType Basic
  #项目的名称
AuthName "enterprise"
  #用户文件
AuthUserFile D:\SVN\svnAllproject\enterprise\conf\passwd.apache
</location>
  八、插件myeclipse+SVN中集成
  
  插件集成地址
  http://subclipse.tigris.org/update_1.6.x
  会出现unable to load default svn client 这种错误一般是由于没有JavaHL造成的。
解决方案:去http://www.collab.net/downloads/subversion/redhat.html下载
CollabNet Subversion Command-Line Client v1.6.11 (for WINDOWS的)

运维网声明 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-322070-1-1.html 上篇帖子: 如何整合Apache和Tomcat 下篇帖子: Apache+Jboss 完成二级域名
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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