版本管理之SVN实践教程:基础篇(1):简介&安装

本文介绍了SVN作为集中式版本管理工具的基本概念,对比了分布式与集中式管理的优缺点,并提供了安装指南,包括源码编译、二进制安装和Subversion Edge。Apache推荐使用1.10.2版本,文章强调了及时升级的重要性。
摘要由CSDN通过智能技术生成

这里写图片描述
subversion简称svn,是vcs(Version Control System)的一种,是集中式版本管理(centralized version control)工具的优秀代表,加之Apache项目的光环,一度在版本管理的工具中占有绝对的主导地位。随着开源项目的推广和git的推进,svn似乎风光不在,但是在企业级开发中仍然占有主要的一席之地。从这篇文章开始将会介绍一下如何使用svn进行开发。

概要信息

项目说明
开源/闭源开源
License类别Apache License
官网http://subversion.apache.org/
代码管理地址http://subversion.apache.org/download
开发语言c,cpp
当前稳定版本1.10.2

版本管理工具的对比

svn相比于早期的rcs以及现在流行分布式版本管理工具git,一些主要的特点如下:

代表类型工具版本管理方式并发控制方式类型
RCS对单个文件进行版本管理文件锁集中式版本管理
CVS/SVN对多个文件进行版本管理先合并后提交集中式版本管理
git对多个文件进行版本管理先提交后合并分布式式版本管理

分布式 vs 集中式

本地管理

早期的版本管理工具,比如RCS一般通过一个,v文件可以在本地进行保存,但是并不是说RCS就不能进行集中式版本管理,其实在VCS和SVN出现之前的非常早期的大型项目中,你都可以找到现代版本管理工具的一些原型,甚至分布式。比如你只需要结合软连接,将,v进行集中式管理,不同机器之间进行nfs方式挂载,就可以实现网络互通方式下的简单集中式管理。但是这只是利用了一些os的特性而已,早期的一些版本管理工具一般来说都是可以在local进行版本的管理:
这里写图片描述

集中式管理

CVS或者SVN都是集中式管理的典型,这种方式的特点就是使用简单,但是中心依赖性较强,一旦网络出现问题,或者服务故障影响巨大。
这里写图片描述

分布式管理

诸如git这样的分布式管理工具,使用起来没有了集中式对于中心的依赖,本地是整个仓库的副本,但是当副本巨大的时候也会有有些影响,当然通过有效的管理都可以消除。但是分布式本身的特点所带来的影响也是有的,集中式的版本管理往往在提交之前就会发现,但是本地分布式仓库的存在给了一种全新的方式可以先提交再合并,在分支模型管理不好的情况下,可能会带来很多后期Merge的成本。
这里写图片描述

版本支持状况与建议

apache当前建议使用的版本为1.10.2,考虑到项目中可能会有比较旧的版本信息,请参考如下信息进行合理升级

版本支持状况
1.8.x以及之前版本不再提供支持
1.9.x版本提供部分支持,一般仅针对安全等相关的issue或者bug
1.10.x所有bug的对应都会提供支持

没有特别的问题的话,建议还是升到1.10上比较安心,非功能性因素相关的技术债务建议也不要积累的越来越多。

安装

安装可以采取源码编译/二进制方式/Subversion Edge/镜像方式等进行。

源码下载

如果有svn客户端的话,可以直接使用svn co下载源码:svn co https://svn.apache.org/repos/asf/subversion/trunk subversion

编译

编译则直接使用: ./configure ; make; make install 即可。详细的模块的设定可参看如下说明:https://svn.apache.org/repos/asf/subversion/trunk/INSTALL

二进制方式

几乎大部分操作系统都提供了package进行快速安装,包括:AIX | Centos Linux | Debian Linux | Fedora Linux | FreeBSD | HP-UX | NetBSD | OpenBSD | openSUSE | Mac OS X | Red Hat Linux | Solaris | SUSE Linux | Ubuntu Linux | Windows等操作系统。
比如在centos上,最简单的方式就是直接使用yum进行安装:yum install subversion,而如果需要dav模块,则直接使用yum install mod_dav_svn即可。
详细可参看:http://subversion.apache.org/packages.html

Subversion Edge

另外还可以直接使用Collabnet公司所提供的,edge还提供了容易操作的UI界面,可以参看以前版本的Subversion Edge相关的安装/设定说明:https://blog.csdn.net/liumiaocn/article/details/52108075

总结

这篇文章对svn进行了简单的介绍,在接下来这个系列的文章中,将会使用容器方式进行安装和设定,而使用如上的安装方式的,相关的设定则需要寻找对应目录进行设定和修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值