版本管理
...大约 3 分钟
版本管理
版本控制(Version control)是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。
分类
- 本地版本控制系统
- 集中版本控制系统
- 分布式版本控制系统
本地版本控制系统
- RCS:RCS是一款古老的版本控制系统,它采用了类似CVS的工作流。
- CVS:是版本控制系统,是源配置(SCM)的重要组成部分。
- Subversion(SVN):是一款开源的版本控制系统,它采用了类似CVS的工作流。
- Perforce:是一款商业软件,它采用了类似CVS的工作流。
集中版本控制系统
- CVS:是版本控制系统,是源配置(SCM)的重要组成部分。
- TortoiseSVN(SVN):是一款非常易于使用的跨平台的版本控制/源代码控制软件。
- Git:是目前最流行的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。
- HG:Mercurial是一款分布式版本控制系统,它采用了类似CVS的工作流,并有很多类似Git的优点。是一种轻量级的分布式版本控制系统。采用Python开发。
分布式版本控制系统
- Git:是目前最流行的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。
- Mercurial:Mercurial是一款分布式版本控制系统,它采用了类似CVS的工作流,并有很多类似Git的优点。是一种轻量级的分布式版本控制系统。采用Python开发。
- Bazaar:Bazaar是一款分布式版本控制系统,它采用了类似CVS的工作流,并有很多类似Git的优点。是一种轻量级的分布式版本控制系统。采用Python开发。
- Darcs:Darcs是一款分布式版本控制系统,它采用了类似CVS的工作流,并有很多类似Git的优点。是一种轻量级的分布式版本控制系统。采用Python开发。
总结
优点:
- 记录文件所有历史变化,只是版本控制系统的基本能力
- 随时恢复到任意时间点,历史记录功能使我们不怕改错代码了
- 支持多功能并行开发,通常版本控制系统都支持分支,保证了并行开发的能力
- 多人协作并发,对于多人协作项目,支持多人协作开发的版本管理将事半功倍
缺点:
- 集中式版本控制系统,服务器宕机,所有工作都停止,无法进行版本控制
- 集中式版本控制系统,无法分布式开发,无法实现多人协作开发
- 集中式版本控制系统,无法实现分布式开发,无法实现多人协作开发
Powered by Waline v3.2.2