版本控制系统
前言
试想一下,如果没有版本控制系统,当你需要处理那些共享文件夹中的文件时,你必须告知办公室里的所有人,你正在对哪些文件进行编辑;与此同时,其他人必须要避免与操作相同的文件。这是一个不现实和完全错误的流程。当你花了很长时间完成你的编辑后,可能这些文件早已经被团队里的其他开发成员修改或者删除了。
如果使用了版本控制系统,每一个团队成员都可以在任何时间对任何文件毫无顾虑的进行修改,版本控制系统可以把之后所有的改动合并成一个共同的版本,不论是一个文件还是整个项目。这个共同的中心平台就是我们的版本控制系统。
概念
版本控制系统(version control system)是指在软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理。以便程序员将来查阅特定版本的修订情况。
介绍
版本控制系统有哪些优点
- 记录历史版本信息(记录每一次修改的信息)
- 方便团队之间的协作开发
…
分类
集中式版本控制系统
介绍
集中式版本控制系统中,版本库是存放在中央服务器上的。程序员在工作的时候需要从中央服务器中拉取代码,在自己的电脑上编写代码,在工作完成后要将代码推送到中央服务器上。
特点
- 工作前先在中央服务器上拉取代码
- 工作结束后要将代码推送到中央服务器上
- 必须在联网时才可以查看历史版本信息
- 中央服务器要是损坏,则一切工作就泡汤了
- 所有的上传和下载都是基于文件传输方式完成的,速度慢
…
集中式控制系统代表
- CVS/SVN
工作流程
分布式版本控制系统
介绍
分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库。在多人合作开发时,只需将自己更改的代码推送给同事就可以满足协同合作了。
特点
- 无需联网也能查看历史版本信息
- 无需过多依赖中央服务器
- 无需过多依赖中央服务器
- 向中央仓库传输内容的时候采用的是文件流传输,速度快
…
分布式版本控制系统代表
- Git
工作流程
天生我才必有用,千金散尽还复来