什么是Git
git
git是一种分布式版本控制的工具,会将代码保存到git中,当成一个代码库去进行存储修改。
通俗讲,你有一个版本程序,在你修改过后产生另外一个版本,通过git可以帮你保存这两个版本,在你想要使用的过程中,可以随便的拿出两个版本中的任意一个,而不是更改了代码后,只留下来最新的版本。并且如果你想让别人也修改,可以将代码上传到仓库中,形成分布式版本的控制工具。
版本控制工具
除了刚刚提到的git工具,分布式版本控制工具,在工具演进的过程中还有其他的工具。
本地版本控制工具
通过本地复制文件夹进行版本控制,通过赋予不同的文件名区分版本
代表性工具:RCS
缺点:只能单人使用,不可以多人协作,于是产生集中式版本控制
集中式版本控制
建立一个远程服务来保存文件,所有的提交在服务器中
代表性工具:SVN
缺点:
- 提交必须连接服务器
- 本地不进行版本保存,一旦服务器出现问题容易崩溃
- 分支不够好,对于团队协作有一定困难
优点:
- 支持二进制文件,对大文件友好
- 简单易上手
分布式版本控制
本地会保存完整的分支和提交历史,会在本地保存一份,通过push等操作跟远程的服务器代码库保持一致
缺点:
- 学习难度高,多人操作容易出现提交覆盖的问题
- 对于大文件来说不太好,因为会造成服务器存储爆满的情况,上传文件过多,服务器容量不够
优点
- 分支管理更简便,适合多人协作
- 分布式开发,每一个本地都会有完整的提交历史,会有自己的暂存区保存commit记录。
- 校验和机制完整