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

Win7下搭建外网环境的SVN服务器

[复制链接]

尚未签到

发表于 2015-5-14 10:39:45 | 显示全部楼层 |阅读模式
  最近想跟一帮朋友做点东西,由于几个朋友都身处异地,要想实现版本控制,只能自己搭建一个小的服务器,通过互联网环境来实现版本控制了。本来也在网上找了好多资料,但是总是缺少一些必要的信息,导致最后连接不上服务器。今天好几天的折腾,到网上去查资料,自己动手测试,最后终于搞定了,这里跟大家分享一下,希望对一些朋友会有用。如果文章中有不对的地方,还请大家轻拍砖,多多指正!
  【基本原理】
  通过apache或IIS搭建一个小型的服务器,使用花生壳工具或路由器自带的动态域名解析功能,将申请的免费域名绑定动态的IP地址上,利用路由器完成端口映射,通过HTTP协议完成SVN版本控制。
  【工具准备】
  1、apache工具(xampp):http://www.apachefriends.org/zh_cn/xampp-windows.html#1787     该链接包含三种压缩方式的下载链接,你可以根据自己的喜好去下载相应的版本。至于具体的用法的话,可能需要你自己去研究了,毕竟在本文中不是我们讲述的重点。
  2、SVN 服务器(Subversion):http://sourceforge.net/projects/win32svn/  (点击那个Download绿色按钮就会自动下载了)
  3、SVN 客户端(TortoiseSVN):http://tortoisesvn.net/downloads.html   (选择相应的处理器版本进行下载)
  4、SVN 中文语言包:http://tortoisesvn.net/downloads.html    (在Language Package部分,选择自己对应的语言版本和处理器信息的语言包进行下载,我们就是简体中文)
  5、花生壳:http://www.oray.com/peanuthull/download.php   (在此页面,选择你的操作系统版本,进行下载。本文标题是Win7下,自然就乖乖选择Windows吧)
  【配置过程】
  1、利用花生壳网站申请一个免费的个人域名,利用申请到的护照登录花生壳客户端,在该域名上右键选择“域名诊断”,如果显示了以下图片,就表明动态域名解析已经OK了。大家可以试着ping一下自己申请的域名,应该是可以ping通的。
DSC0000.jpg
  2、安装SVN服务器程序、SVN客户端程序、SVN客户端中文语言包。
  安装好这三个程序之后,在SVN客户端程序的设置里面,配置成中文语言,这样大家使用SVN就更加方便一点了。PS: 当然,如果你习惯玩英文的话,不用装中文语言包也是OK的。
  3、安装xampp。(建议安装或解压到不存在空格和中文字符的文件夹目录下)
  如果你下载的是安装版的,直接安装就好了;如果你下载的是非安装版,解压后,执行setup-xampp.bat文件,也能够一样完成安装操作。
  
  4、配置端口映射
    登录到路由器,找到“转发规则”--->“虚拟服务器”,然后添加新的条目,如下图所示:
DSC0001.jpg
  5、配置Apache服务
    在目录xampp/apache/conf中找到httpd.conf,分别找到Listen部分和ServerName部分,修改数据如下:
    #Listen 80
    Listen 你的端口号(例如"Listen 8080")
    #ServerName localhost:80
    ServerName 你的花生壳域名:你的端口号(例如“ServerName xxx.gicp.net:8080”)
    保存后重启Apache服务,在浏览器地址栏输入“xxx.gicp.net:8080”,看看能不能看到xampp的首页。如果可以看到,说明你的服务器搭建好了,我们就可以配置SVN服务了。
  但是!!!!!!!!!
  我的电脑在最开始的时候就是这个地方不行。为什么?
    后来经过各位网友的提示,可能是防火墙的问题,于是将Windows自带的防火墙关闭了,但是还是不行啊!坑爹啊,你装了安全软件,有木有?你妹啊,你装了杀毒软件,有木有!
    如果经过上面的步骤,你们跟我一样不能连接到服务器,还是乖乖的检查一下你的安全类软件的配置吧,看看是不是把入站和出站的规则防护的太严了?不管你们是不是防护的太严,反正我是防护太严了。找到了问题,各位试着关闭安全类软件的防火墙,或者设置一下过滤规则吧,然后再试试打开网址,应该是可以的。当然,不能关着防火墙裸奔吧,嗯,还是把系统自带的防火墙,安全软件的防火墙都设置一个过滤规则吧,允许Apache的服务通过防火墙!
  6、配置SVN服务
    在适合的地方新建一个文件夹,用于存放你的第一个SVN版本仓库。进入新建的文件夹,在空白地方右键选择“TortoiseSVN”--->“在此创建版本库”,则在该文件夹下会自动生成几个文件夹和若干个文件,我们不需要对这个文件夹再做其他操作了,如果各位感兴趣可以去查一下每个文件夹的用途。
    将SVN服务器配置成一个开机自动启动的服务,方便每次开机时可以自动开启此服务。打开CMD,进入到SVN服务器Subversion的bin目录下,执行如下命令:
    sc create subversion_service binpath= "c:\subversion\bin\svnserve.exe --service -r 你的版本仓库的目录" displayname= "Subversion Repository" depend= Tcpip
    (注意:以上命令在每个“=”符号之后都有一个空格,请各位博友看清楚哈)
    然后启动该服务,我们的SVN服务器就运行起来了。
    但是,还没有结束。复制svn服务器bin中的四个文件mod_dav_svn.so,mod_authz_svn.so,intl3_svn.dll,libdb44.dll到apache的modules文件夹中, 并修改httpd.conf文件中的配置信息。
    去掉LoadModule dav_module modules/mod_dav.so签名的“#”注释符号,并在其下一行添加如下信息
    LoadModule dav_svn_module modules/mod_dav_svn.so
    LoadModule authz_svn_module modules/mod_authz_svn.so
    在文件最后添加 :
  
  DAV svn
  SVNPath "d:\svn_repository\test"
  AuthType Basic
  AuthName "Subversion repositories"
  AuthUserFile "d:\passwordfile"
  Require valid-user
  
    保存该文件后,需要重启apache服务。
  说明:
  /svn是用来访问仓库的
d:\svn_repository这个是你设置的版本仓库的路径
d:\passwordfile这个是密码文件,现在就来创建该密码文件:
打开命令窗口cmd
cd到apache的bin目录,然后输入
htpasswd -c d:\passwordfile  你的账户名称
输入两次密码 (是你为账户名称设置的登录密码)
就搞定了 。
  
7、测试
  打开游览器,输入http://xxx.gicp.net:端口号/svn/,输入用户密码(就刚才设置的),如果见到下图,那就万事大吉了。
  
DSC0002.jpg
  接下来,你可以用SVN客户端来控制你的版本了。
  

  祝各位的实验能够成功了,如果有问题,欢迎各位评论一起研究探讨,多多交流。

运维网声明 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-66862-1-1.html 上篇帖子: 【原创】Win7局域网打印机共享设置(详细图文流程) 下篇帖子: VS2003与Win7的兼容性问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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