[什么是git | 青训营笔记 ]

51 阅读2分钟

什么是Git

git

   git是一种分布式版本控制的工具,会将代码保存到git中,当成一个代码库去进行存储修改。

通俗讲,你有一个版本程序,在你修改过后产生另外一个版本,通过git可以帮你保存这两个版本,在你想要使用的过程中,可以随便的拿出两个版本中的任意一个,而不是更改了代码后,只留下来最新的版本。并且如果你想让别人也修改,可以将代码上传到仓库中,形成分布式版本的控制工具。

版本控制工具

除了刚刚提到的git工具,分布式版本控制工具,在工具演进的过程中还有其他的工具。

image.png

本地版本控制工具

通过本地复制文件夹进行版本控制,通过赋予不同的文件名区分版本

代表性工具:RCS

缺点:只能单人使用,不可以多人协作,于是产生集中式版本控制

集中式版本控制

建立一个远程服务来保存文件,所有的提交在服务器中

代表性工具:SVN

缺点:

  1. 提交必须连接服务器
  2. 本地不进行版本保存,一旦服务器出现问题容易崩溃
  3. 分支不够好,对于团队协作有一定困难

优点:

  1. 支持二进制文件,对大文件友好
  2. 简单易上手

分布式版本控制

本地会保存完整的分支和提交历史,会在本地保存一份,通过push等操作跟远程的服务器代码库保持一致

缺点:

  1. 学习难度高,多人操作容易出现提交覆盖的问题
  2. 对于大文件来说不太好,因为会造成服务器存储爆满的情况,上传文件过多,服务器容量不够

优点

  1. 分支管理更简便,适合多人协作
  2. 分布式开发,每一个本地都会有完整的提交历史,会有自己的暂存区保存commit记录。
  3. 校验和机制完整 image.png