目录 1、Git的基本操作流程 2、工作区、暂存区、版本库的区别 (1)工作区 (2)版本库 (3)暂存区 (4)通过新增文件理解三个区的关系 (5)说明 1、Git的基本操作流程 初始化一个
- 1、Git的基本操作流程
- 2、工作区、暂存区、版本库的区别
- (1)工作区
- (2)版本库
- (3)暂存区
- (4)通过新增文件理解三个区的关系
- (5)说明
- 初始化一个本地版本库,每个版本库仅需要执行一次。
- 将中央版本库内容克隆到本地版本库,每个客户机仅需要执行一次。
- 添加指定文件到版本控制管理(这一步只是添加到Git暂存区)。
- 将添加、修改等操作,提交到本地版本库(将暂存区的内容提交到本地版本库)。
如果远程仓库的内容被别人修改了,需要先同步远程的内容,直接git pull
就可以更新本地的文件,然后再提交。再这过程中可能需要解决冲突。
在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。 - 将本地版本库中的修改内容“推送”到中央版本库,客户机需要在一阶段性工作完成之后,或在某些时间点(下班,周五),将修改过的内容备份到中央版本库,方便他人更新到最新的代码。
- 将中央版本库中的变化内容“拉取”本地版本库,客户机需要不定时的更新才可以获取最新的内容。
提示:实际工作中的很多功能和操作都在第3、4步中。
如下图:
说明:
上面内容涉及到Git中的几个区域:
workspace
:工作区。staging area
:暂存区/缓存区。local repository
:版本库或本地仓库。remote repository
:远程仓库。
我们先来理解下Git 工作区、暂存区和版本库概念,这对以后我们学习Git命令会有非常大的帮助。
(1)工作区就是你在电脑里能看到的目录。
一般我们执行git init
命令,就能把一个目录初始化成Git本地版本库。
而这个目录就是该Git本地版本库的工作区。
如下图:git-demo1
目录就是一个本地仓库。
具体结构如下图:
(2)版本库版本库:工作区(项目根目录)有一个隐藏目录.git
,这个目录就是版本库,而该目录不算工作区。
具体结构如下图:
(3)暂存区暂存区:
- 暂存区从字面上去理解就是用来暂时保存文件的地方,实际上它的作用和它的名字是一致的,暂存区可以起到过渡的作用,当我们写代码修改了一些文件的时候,可以把修改的代码提交到暂存区保存,然后接着写代码,接着再提交到暂存区保存,写完某些代码觉得没什么可以修改的时候,可以将暂存区里面的文件一次性提交到版本库。
- 暂存区英文叫
stage
,或index
。 - 暂存区是包含在版本库中的,一般存放在
.git
目录下的index文件
(.git/index
)中,所以我们把暂存区有时也叫作索引(index
)。
暂存区位置如下图:
具体结构如下图:
说明:
版本库又存在两个很重要的区域:暂存区与分支区。
分支区:该区域中可以包含很多分支,而每个分支都可以记录当前工作区中文件状态的快照。
如下图:
即:分支区就相当于本地版本库。
(4)通过新增文件理解三个区的关系1)工作区新加文件 index.html
。
2)将index.html提交到暂存区。
3)将暂存区内的内容提交到版本库。
4)将本地版本推送到Github上。
(5)说明我们只要知道Git的整体操作流程即可,脑子中有一个宏观的概括就可以。关于每一步是如何操作的,和具体使用的命令,我们以后会一步一步的进行详解。
参考:http://www.yanhongzhi.com/post/git-2.html