SVN源码服务器搭建-详细教程

摘要:
因为该公司最近决定建立SVN源代码服务器来解决上述问题,所以作者在经过一段时间的探索和使用后才提出了这篇文章。
一、引言

      笔者曾经试图在网上搜索一篇关于SVN源代码服务器搭建方面的中文技术文章,可惜,所找到的,要么是不完整,要么就是对笔者没什么帮助的文章,TortoiseSvn的帮助文档固然强大,但因为是英文,不是很适合来作为入门者使用;毕竟,TortoiseSvn是一个客户端,服务器端的配置也很重要。

      一年前,笔者刚刚毕业,初入公司,在进行开发时,由于没有进行软件代码版本管理,导致的结果是

  • 软件一天一个版本
  • Bug日益增加且隐藏很深
  • 代码无法向前回溯
  • 几个月前修正过的Bug在几个月后又重新出现
  • ……

      由于最近公司决定架设SVN源代码服务器,来解决以上问题,故笔者经过一段时间的摸索和使用,便有了此文。

二、学习本文先决条件

      如果作为读者的你符合以下情况,那么本文可以对你起到一个很大的帮助作用:

  • 具备基本的软件开发知识
  • 了解Client/Server模型
  • 正在被日益更新的软件代码版本所困扰

      本文旨在指导读者如何利用现有的软件工具进行软件代码版本管理工作,如果你对软件版本控制与管理,维护与备份较为感兴趣,可以阅读此文来获取一定的知识。

三、安装SVN服务器端软件

      首先,你必须下载两款软件包:VisualSVN Server和TortoiseSVN,两者都是开源软件,至于在哪里下载,百度或谷歌之,尽量使用最新版就好,我使用的版本如下:

 

服务器端:VisualSVN-Server-2.5.5.msi

客户端:TortoiseSVN-1.7.5.22551-win32-svn-1.7.3.msi

 

双击以下图标,打开安装包:

SVN源码服务器搭建-详细教程第1张

单击“Next”

SVN源码服务器搭建-详细教程第2张

勾选“I accept...”,然后单击“Next”

SVN源码服务器搭建-详细教程第3张

选择第一个“安装VisualSVN Server(可视化SVN服务器)”和“Management Console”

SVN源码服务器搭建-详细教程第4张

Location是你的安装目录,C盘或D盘都可以,Repositories是你的源代码仓库,也就是你SVN帮你管理代码放置的位置,这里我选择放置在D盘根目录下,将“Use secure connection”复选框的勾去掉,然后在Server Port中填写8080(填其他端口号也可以,但是确保该端口号未被占用),在这里不使用安全连接的原因是,它会导致通讯速度减慢(PS:当时在公司配置时使用的secure connection,每次Checkout一次要15秒多的时间,无法忍受),然后单击“Next”:

SVN源码服务器搭建-详细教程第5张

单击“Install”

SVN源码服务器搭建-详细教程第6张

等待……

SVN源码服务器搭建-详细教程第7张

Finish!

SVN源码服务器搭建-详细教程第8张

单击“Finish”后,会启动VisualSVN Server,可以看到,它的Status是:

VisualSVN Server is running

Server URL is http://motor-109133.hanslaser.com:8080/svn/

至此,服务器端软件安装完毕!

SVN源码服务器搭建-详细教程第9张

四、SVN服务器配置项目

右键单击“Repositories”,选择“Create New Repository...”

SVN源码服务器搭建-详细教程第10张

在“Repository Name”下方文本框填入“TestSvn”(作为测试用),将“Create default structure(trunk,branches,tags)”选项勾选上,单击OK

SVN源码服务器搭建-详细教程第11张

可以看到在Repositories树下面,有一个TestSvn库,这个TestSvn库中有三个文件夹:

  • branches(分支,修改特殊功能或者新功能的分支代码,可与主干进行合并)
  • tags(标记,设定milestone版本)
  • trunk(主干,存放当前正在编辑的代码工程)

SVN源码服务器搭建-详细教程第12张

开始新建用户(用户组管理请各位自己研究),右键单击“Users”,选择“Create User...”

SVN源码服务器搭建-详细教程第13张

在“Create New User”对话框中填写账号密码,如图所示:

SVN源码服务器搭建-详细教程第14张

可以看到Users文件夹下面有了一个用户:

SVN源码服务器搭建-详细教程第15张

记得将Repositories仓库的属性修改一下,因为它默认的属性是Everyone Read/Write,意思是任何人都可以对该库中的内容进行读写,现在我们要将其修改成Everyone No Access,然后再自己添加用户,给予用户读或写的能力,右键单击“Repositories”,选择“Properties”:

SVN源码服务器搭建-详细教程第16张

选中“Everyone”,然后勾选“No Access”:

SVN源码服务器搭建-详细教程第17张

现在开始为TestSvn添加一个用户,也就是刚刚添加的账号:zhengshuo,右键单击“TestSvn”,选择“Properties...”:

SVN源码服务器搭建-详细教程第18张

单击“Add...”,选择Users下的zhengshuo,单击OK

SVN源码服务器搭建-详细教程第19张

这样用户zhengshuo就被添加到TestSvn项目中(即目前只有zhengshuo才有对TestSvn的读写权利):

SVN源码服务器搭建-详细教程第20张

五、安装SVN客户端软件

双击如下安装包:

SVN源码服务器搭建-详细教程第21张

单击“Next”

SVN源码服务器搭建-详细教程第22张

选择“I accept...”,单击“Next”

SVN源码服务器搭建-详细教程第23张

选择安装目录,单击“Next”:

SVN源码服务器搭建-详细教程第24张

开始Install:

SVN源码服务器搭建-详细教程第25张

Wait...

SVN源码服务器搭建-详细教程第26张

安装完毕!

SVN源码服务器搭建-详细教程第27张

六、从SVN服务器签出工程代码

在任意一个位置建立一个文件夹TestSvn,比如说D盘,右键单击该文件夹,选择“SVN Checkout...”

SVN源码服务器搭建-详细教程第28张

填写好“URL of Repository”,格式是http://你电脑的IP地址:8080/svn/TestSvn,端口号是之前设置好的8080,IP地址填写你当前电脑的IP地址,然后单击OK:

SVN源码服务器搭建-详细教程第29张

SVN会提示输入账号密码进行验证,因为zhengshuo这个账号在服务器中已经添加,所以可以用该账号进行登录:

SVN源码服务器搭建-详细教程第30张

验证成功后,会提示“Checkout Finished!”:

SVN源码服务器搭建-详细教程第31张

七、向SVN服务器签入工程代码

第一次签出会获得当前项目TestSvn中的目录结构,即branches,tags和trunk:

SVN源码服务器搭建-详细教程第32张

我们的代码要放在trunk(主干)文件夹中,代码如下:

SVN源码服务器搭建-详细教程第33张

SVN源码服务器搭建-详细教程第34张

右键单击TestSvn文件夹,选择“SVN Commit...”

SVN源码服务器搭建-详细教程第35张

填写好上传理由Message,单击OK

SVN源码服务器搭建-详细教程第36张

提示“Commit Finished!”

SVN源码服务器搭建-详细教程第37张

八、后记

      本文讲述的内容虽然较为简单,但是,它却给了初学者一个最佳的切入点,让初学者能够在最短的时间内,对SVN源代码服务器的搭建和初步使用有一个通盘的了解。

      通过对SVN源码服务器的搭建,也让我明白了软件代码版本管理的重要性,正所谓君子善假于物也,我们作为一个合格的软件工程师,要善于合理利用身边一切可以利用的资源,来优化我们的工作环境,提高工作效率,为公司为自己写出Bug较少的完美软件。(全文完)


转自:http://blog.csdn.net/zs8861/article/details/7879594

免责声明:文章转载自《SVN源码服务器搭建-详细教程》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【转】使用electron开发,修改文件后如何做到自动刷新彻底理解RSA算法原理下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

应用性能监控(二)

Zipkin 是一款开源的分布式实时数据追踪系统(Distributed Tracking System),基于 Google Dapper 的论文设计而来,由 Twitter公司开发贡献。其主要功能是聚集来自各个异构系统的实时监控数据,用来追踪微服务架构下的系统延时问题。应用系统需要进行装备(instrument)以向 Zipkin 报告数据。Zipki...

MSSQL2008 R2 数据库展开报错:值不能为空 参数名:viewInfo

打开数据库时报错,提示应用程序组件中发生了无法处理的异常。如果单击“继续”,应用程序将忽略此错误并尝试继续。 针对此类问题的解决办法是:将路径C:\Documentsand Settings\Administrator\Application Data\microsoft\Microsoft SQLServer\100\Tools\Shell下的文件Re...

SVN异常处理(五)-状态小图标不见了

1.发现问题 装了Win10,再装了Office2016等一些最新软件后,发现SVN状态小图标竟然就不见了 2.分析问题 在Window系统中,当UAC启动时,有些应用程序的图标上会显示一个盾牌,像这个就是Overlay Icon的功能。 而Windows Explore Shell最多支持15个Overlay Icon(MSDN上译为“覆盖图标”),W...

SQL server 2008 数据库企业版安装教程图解

SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本。在现今数据的世界里,公司要获得成功和不断发展,他们需要定位主要的数据趋势的愿景。微软的这个数据平台愿景帮助公司满足这些数据爆炸和下一代数据驱动应用程序的需求。微软将继续投入和发展以下的关键领域来支持他们的数据平...

Arch/GentooLinux开发环境构建与常用软件一览

编辑器 Emacs Arch Linux yay -S clang emacs Gentoo Linux sudo emerge --ask clang emacs visual-studio-code Gentoo Linuxsudo emerge --ask app-editors/visual-studio-code sublim...

weex入门指南--华岭

背景:      由于公司项目需要,需求变化频繁,计划总改不上变化,由于app更新版本周期长,不能很好应对这种变化,正在此前提下热修复和热更新技术也有了发展的空间,不管热修复还是热更新,都是对app内容或者逻辑的变化作出像web网页更新类似的体验。      weex阿里推出的热更新框架,已再内部应用在多款app上如淘宝,天猫和闲鱼等,典型的电商型app非...