Git与SVN版本控制系统

关于版本控制

  什么是版本控制?版本控制是一种记录一个或若干文件内容变化,以便未来查阅特定版本修订状况的系统。在本书所展现的例子中,咱们仅对保存着软件源代码的文本文件做版本控制管理,但实际上,你能够对任何类型的文件进行版本控制。数据库

Git:分布式版本控制体统安全

是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。服务器

Git的功能特性:分布式

 

 

 

一、从服务器上克隆完整的Git仓库(包括代码和版本信息)到本身电脑上。
 
二、在本身的电脑上根据不一样的开发目的,建立分支,修改增删代码。
 
三、在本身的电脑里,本身建立的Git分支上提交代码,提交到本身本地的Git仓库;
 
 
 
四、在电脑上合并分支。
 
 
 
五、推送到本身的服务器,(没有完成,不想让别人知道的前提下!)
六、推送到公用服务器上,(已完成!)
 
 
 
七、看主开发者的反馈,若是主开发者发现两个通常开发者之间有冲突(他们之间能够合做解决的冲突),就会要求他们先解决冲突,而后再由其中一我的提交。若是主开发者能够本身解决,或者没有冲突,就经过。
 
 
 
《天天修改的时候记得在主服务器上获取一下最新的版本,以防冲突》
优势:
适合分布式开发,强调个体。
公共服务器压力和数据量都不会太大。
速度快、灵活。
任意两个开发者之间能够很容易的解决冲突。
离线工做。
缺点:
学习周期相对而言比较长。
不符合常规思惟。
较复杂
 
安装包连接http://pan.baidu.com/s/1nvJFxrV 密码:zav2

 

SVN是集中式版本控制系统,
说得简单一点SVN就是用于多我的共同开发同一个项目,共用资源的目的。
集中式管理的工做流程以下图:
集中式代码管理的核心是服务器,全部开发者在开始新一天的工做以前必须从服务器获取代码,而后开发,最后解决冲突,提交。全部的版本信息都放在服务器上。若是脱离了服务器,开发者基本上能够说是没法工做的。
 
一、从服务器下载项目组最新代码。
二、进入本身的分支,进行工做,每隔一个小时向服务器本身的分支提交一次代码(不少人都有这个习惯。由于有时候本身对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时本身修改了哪些代码,就须要这样作了)。
三、最后,把本身的分支合并到服务器主分支上,一天的工做完成,并反映给服务器。
这就是经典的svn工做流程,从流程上看,有很多缺点,但也有优势。
 

优势:

一、管理方便,逻辑明确,符合通常人思惟习惯。
二、易于管理,集中式服务器更能保证安全性。
三、适合开发人数很少的项目开发。 
四、相对简单,好操做。
 

缺点:

一、服务器压力太大,数据库容量暴增。
二、若是不能链接到服务器上,基本上不能够工做,
三、若是服务器不能链接上,就不能提交,还原,对比。
三、不适合开源开发。可是通常集中式管理的有很是明确的权限管理机制(例如分支访问限制),能够实现分层管理,从而很好的解决开发人数众多的问题。

 

 PS:昨天晚上研究了大半夜的成果!
相关文章
相关标签/搜索