版本控制
版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统
优点
更好的关注变更,了解到每个版本的改动是什么,方便对改动的代码进行检查,预防事故发生,也能够随时切换到不同的版本中,回滚误删误改的问题代码
| 版本控制类型 | 代表性工具 | 解决的问题 |
|---|---|---|
| 本地版本控制 | RCS | 本地代码的版本控制 |
| 集中式版本控制 | SVN | 提供一个远端服务器来维护代码版本,本地不保存代码版本,解决多人协作问题 |
| 分布式版本控制 | GIT | 每个仓库都能记录版本历史,解决只有一个服务器保存版本的问题 |
本地版本控制
最初的方式
通过本地复制文件夹,来完成版本控制,一般可以通过不同的文件名来区分版本
解决方案
开发了一些本地的版本控制软件,其中最流行的是RCS
基本原理
本地保存所有变更的补丁集,可以理解成就是所有的Diff,通过这些补丁,我们可以计算出每个版本的实际的文件内容
缺点
RCS这种本地版本控制存在最致命的缺陷就是只能在本地使用,无法进行团队协作,因此适用的场景非常有限,因此衍生出了集中式版本控制