Git是什么?通俗介绍
Git是目前世界上最先进的分布式版本控制系统。
什么是版本控制系统?
大家都写过毕业论文,由于老师的批改意见或者思路还不够清晰,有一部分内容需要反复修改,当修改的内容比较多时就会复制多个副本,并可能会出现下图的情况。如果我们要找回之前修改或者删掉的段落就需要从这些文档去查找,一是这样命名的文档查找起来很麻烦,二是管理起来很乱。
Git的历史
Linus在1991年开源了linux,从此linux不断发展壮大,成为了最大的服务器系统软件,linux的成功得益于全世界的大牛们为linux做出的卓越贡献。刚开始的时候是Linus自己一个人把其他开发者提交的代码,通过手工方式合并,可是随着linux的代码量急剧增加,使用手工的方式已经几乎不可能了,必须要使用某种版本控制系统来整合linux内核代码。
Linus本人反对使用CVS、SVN,因这些集中式的版本控制系统效率低下,且必须联网才能使用,由于开发者们的集体抱怨,后来使用了BitKeeper版本控制系统。再后来Linus自己用C搞出了Git分布式版本控制系统,一个月后linux的代码就有Git接管了。
版本控制系统总结
集中式版本控制系统
集中式版本控制系统需要一台中央服务器,所有的版本库集中存储在中央服务器里。如果一个开发对版本库做了修改,需要提交到中央服务器,其他开发开发者同步之后才能看到修改。这就好比网络中,AP的存在一样。
分布式版本控制系统
世界是对立统一的,有好就有坏,有集中式系统就会有分布式系统,分布式版本控制系统就好比蓝牙通信一样,任何两个人都可以互相通信。
每个人的电脑里都保存了项目完整的代码。分布式系统原本没有服务器的概念,为了方便管理,只有管理员可以给服务器提交代码,其他开发者只能从服务器同步代码,当需要提交代码时,需要提交给管理者review。
版本库的概念
版本库又叫仓库,简称仓,英文名repository,可以简单理解成一个目录。目录所有的文本文件都被Git管理,Git可以跟踪每个文件的增删改查,可以还原某个时刻的版本。
通过三个命令快速学习Git的使用
git init
在一个目录下执行这个命令,就可以把这个目录变成Git可以管理的仓库。目录下会生成一个隐藏的.git目录,没事不要改动它。
git add
用来添加文件到仓库,此时文件只是在提交仓库前的缓存状态。
创建readme.txt文件,添加文字
Git is a version control system.
Git is free software.
git commit
把文件提交到仓库。可以设置提交仓库时的一些信息。