什么是版本控制
版本控制本身属于软件工程的范畴,简单的来说所谓的版本控制就是确保在开发过程中,由不同人员编辑的同一档案都得到更新,并且通过过一定的措施保证每个人在编辑一个文档之前都是基于最新版本的。基本原理是透过文档的形式记录各个模块的改动,并在有改动的时候为新的改动编上序号。软件系统的版本号由三部分组成:主版本号+次版本号+修改号,主版本号只有一位,只有在系统的结构或功能上有重大的改进和突破的时候才会更新,次版本号由两位组成,修改号为8位,一般采用提交的日期,系统进行任何修改之后,修改号都要随之变化。
有那些版本控制的工具
GitHub--以分布式方式使用
Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中。目前,包括Rubinius和Merb在内的很多知名项目都使用了Git。Git同样可以被诸如Capistrano和Vlad the Deployer这样的部署工具所使用。
作为开源代码库以及版本控制系统,Github目前拥有140多万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。
VSS(Visual Source Safe)--针对局域网上的使用
CVS--互联网的方式使用
SVN--互联网的方式使用
Mercurial--以分布式方式使用
Mercurial 是一种轻量级分布式版本控制系统,采用 Python 语言实现,易于学习和使用,扩展性强。其是基于 GNU General Public License (GPL) 授权的开源项目。
特点
相对于传统的版本控制,具有如下优点: