SVN基本介绍

svn(subversion)  是一个跨平台的开源的版本控制系统
数据放在一个中央资料档案库中,像普通的文件服务器或者FTP服务器
会备份并记录每个文件每一次的修改更新变动。

SVN相关站点:
http://subversion.tigris.org/
http://subversion.apache.org/
svv客户端:http://www.tortoisesvn.net/


常见版本管理软件:
vss,cvs,svn,git

svn与git的区别:
svn版本控制系统是集中式的数据管理,存在一个中央版本库,所有开发人员本地开发所使用的代码都是来自于这个版本库,提交代码也都必须提交到这个中央版本库
工作流程:
1.在中央库上创建或者从主干复制一个分支
2.从中央库check out下这个分支的代码
3.增、删、改代码文件
4.commit代码,假设有人在刚刚的分支上提交了代码,你就会被提示代码过期,你得先up你的代码后再提交。假如出现冲突,需要解决好冲突后再进行提交

缺点:
当你无法连接到中央版本库,无法提交代码,无法查看版本历史及版本变化过程
由于代码库集中管理,因此需要对中央版本库做备份。svn的备份需要备份所有代码的数据以及所有更改的版本记录。


git分布式的版本控制
由linus开发
和svn不同的是,开发者本地也包含了一个完整的git仓库,从某种程度上来说本地和远程的仓库在身份上是等价的,没有主从之分。


svn 服务端运行方式3种:
1.独立服务器访问
    访问地址如:svn://svn.etiantian.org/sadoc
2.借助apache等http服务:
    访问地址如:http://svn.etiantian.org/sadoc
    a.单独安装apache+svn
    b.csvn(apache+svn)是一个单独的整合的软件,带web界面管理的svn软件
3.本地直接访问
    访问地址如:file://application/svndata/sadoc


svn客户端访问方式:
file:// 通过本地磁盘访问或者网络磁盘访问版本库
http:// 通过WebDAV协议访问支持Subversion的Apache服务器
https:// 与http://相似,用SSL加密访问
svn://  通过TCP/IP自定义协议访问svnserver服务器
svn+ssh:// 通过认证并加密的TCP/IP自定义协议访问svnserver服务器

最常用的客户端访问方式:http://和svn://


SVN档案库数据格式
svn存储版本数据2种方式:BDB(一种事物安全型表类型)和FSFS(一种不需要数据库的存储系统)
因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点
Subversion1.2版本以前的缺省版本库格式BDB  之后为FSFS(支持网络文件系统,如:NFS)

SVN是基于关系数据库的(BerkleyDB)或一系列二进制文件的(FS_FS)。数据存储由此变得不透明,不能像ftp,samba,nfs等能看到实体文件了。


缺点:
1.每次提交都保留一个原始副本,一次svn数据容量会暴增
2.如果不能连接到SVN服务器上,基本上不可以工作。
3.不适合开源系统开发(开发人数非常多)
优点:
1.管理方便,逻辑清晰,符合一般人的思维习惯
2.易于管理,集中式svn服务器更能保证数据安全性
3.代码一致性非常高
4.适合开发人数不多的项目开发
5.普及度高,大部分软件配置管理的大学教材都是使用svn和vss

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值