Git版本控制的讲解及详细的安装流程
一.Git简介
Git是由Linux创始人Linus Torvalds在2005年开发的分布式版本控制系统。其诞生背景是Linux社区因使用BitKeeper版本控制系统引发争议后,Linus仅用两周时间自主开发完成。Git迅速成为最流行的分布式版本控制系统,2008年GitHub网站的上线进一步推动了Git的普及。
二.Git的特点
集中式VS分布式
- 集中式版本控制系统(CVCS):如CVS、Subversion等,存在单点故障风险,必须联网使用
- 分布式版本控制系统(DVCS):每个用户都有完整的代码仓库镜像,支持离线操作,安全性更高
版本存储方式
Git采用快照方式存储文件变化,而非记录文件差异。未变化的文件只保存链接,性能更优。
本地化操作
绝大多数Git操作都在本地执行,无需网络连接,处理速度快,支持离线工作。
Git的安装
Git支持Linux、Windows和Mac系统,安装Git,可以到Git官方网站直接下载安装程序。
Git仓库的基本概念
- 远程仓库(Remote):
也叫作资源库,是远程机器上的代码库,用于做不同版本库文件交换更新。如Gitlab,GitHub,gitee。 - 本地库(Repository):
是用户在本地创建的目录,拥有远程库的一个快照,由工作区和版本库构成。
工作区(Workspace):
本地库的根目录中除.git目录以外的内容,存储内容的实际文件。
暂存区(stage/Index):
也叫做缓存区,暂存信息存放在.git目录"下的index文件(.git/index)中,用于临时保存内容的修改;
版本库(.git目录)
是本地库的根目录中的一个隐藏目录.git,用于记录版本信息,Git进行版本控制所需要的文件,则都放在.git文件夹中; - 分支(Branch):
本地库中默认创建一个主(master)分支,分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。
git仓库的工作流程
从一般开发者的角度来看,使用Git的工作流程是:
- 克隆远程库:从远程库上克隆完整的Git仓库(包括代码和版本信息)到本地;
- 在本地库上修改代码:在本地库上根据不同的开发目的,创建分支,修改代码;
- 提交到分支:在本地分支上提交代码;
- 把修改合并到本地主分支:在本地库上提交更新,也就是说,把修改合并到本地主分支;
- 把远程库合并到本地主分支:把远程库上的最新代码fetch下来,跟本地主分支合并,如果存在冲突,那么解决冲突。
- 把本地主分支提交到远程库:生成补丁(patch),把补丁发送给远程库。
到这里为止,Git的基本概念及安装已经完成,接下来是Git命令的学习!