Git的基本操作流程及工作区版本库暂存区的关系

 更新时间:2022年04月24日 09:37:34   作者:繁华似锦Fighting  
这篇文章主要为大家介绍了Git的基本操作流程及工作区版本库暂存区的关系,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

1、Git的基本操作流程

  • 初始化一个本地版本库,每个版本库仅需要执行一次。
  • 将中央版本库内容克隆到本地版本库,每个客户机仅需要执行一次。
  • 添加指定文件到版本控制管理(这一步只是添加到Git暂存区)。
  • 将添加、修改等操作,提交到本地版本库(将暂存区的内容提交到本地版本库)。
    如果远程仓库的内容被别人修改了,需要先同步远程的内容,直接git pull就可以更新本地的文件,然后再提交。再这过程中可能需要解决冲突。
    在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。
  • 将本地版本库中的修改内容“推送”到中央版本库,客户机需要在一阶段性工作完成之后,或在某些时间点(下班,周五),将修改过的内容备份到中央版本库,方便他人更新到最新的代码。
  • 将中央版本库中的变化内容“拉取”本地版本库,客户机需要不定时的更新才可以获取最新的内容。

提示:实际工作中的很多功能和操作都在第3、4步中。

如下图:

说明:

上面内容涉及到Git中的几个区域:

workspace:工作区。

staging area:暂存区/缓存区。

local repository:版本库或本地仓库。

remote repository:远程仓库。

2、工作区、暂存区、版本库的区别

我们先来理解下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的整体操作流程即可,脑子中有一个宏观的概括就可以。关于每一步是如何操作的,和具体使用的命令,我们以后会一步一步的进行详解。

参考:https://www.jb51.net/article/245735.htm

以上就是Git的基本操作流程及工作区版本库暂存区的关系的详细内容,更多关于Git操作流程工作区版本库暂存区的资料请关注脚本之家其它相关文章!

相关文章

  • 基于 Dubbo Admin 临时踢除问题服务实例步骤

    基于 Dubbo Admin 临时踢除问题服务实例步骤

    服务在线上运行的过程中,难免遇到某些节点有问题,为了不影响整体服务的正常运行,需要临时下线问题的服务实例,这篇文章主要介绍了基于 Dubbo Admin 临时踢除问题服务实例,需要的朋友可以参考下
    2022-12-12
  • 编程知识点(1)关键词之存储类型

    编程知识点(1)关键词之存储类型

    这篇文章主要介绍了编程知识点(1)关键词之存储类型的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2020-07-07
  • 详解window启动webpack打包的三种方法

    详解window启动webpack打包的三种方法

    这篇文章主要介绍了window启动webpack打包的三种方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • Windows10使用Anaconda安装Tensorflow-gpu的教程详解

    Windows10使用Anaconda安装Tensorflow-gpu的教程详解

    Anaconda是一个方便的python包管理和环境管理软件,一般用来配置不同的项目环境。这篇文章主要介绍了Windows10使用Anaconda安装Tensorflow-gpu的教程,本文通过图文并茂的形式给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • git_stats web代码图形统计工具详解

    git_stats web代码图形统计工具详解

    仓库代码统计工具之一,可以按git提交人、提交次数、修改文件数、代码行数、注释量在时间维度上进行统计,亦可按各文件类型进行简单的统计,非常方便.本文给大家介绍git_stats web代码图形统计工具,需要的朋友参考下吧
    2021-12-12
  • 细说ASCII、GB2312/GBK/GB18030、Unicode、UTF-8/UTF-16/UTF-32编码

    细说ASCII、GB2312/GBK/GB18030、Unicode、UTF-8/UTF-16/UTF-32编码

    本文主要介绍了细说ASCII、GB2312/GBK/GB18030、Unicode、UTF-8/UTF-16/UTF-32编码,详细的介绍了这些编码的知识,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • uniapp引入支付宝原生扫码插件步骤详解

    uniapp引入支付宝原生扫码插件步骤详解

    这篇文章主要为大家介绍了uniapp引入支付宝原生扫码插件步骤详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • ROS  TF坐标变换基本概念及使用案例

    ROS  TF坐标变换基本概念及使用案例

    本文介绍了TF坐标变换的基本概念以及TF在ROS中的表示形式,通过古月居的乌龟跟随的例子,分析了TF树的广播器和监听器最基本的书写形式,从中展示了如何提取和应用TF变换的信息,并介绍了5种最常用的TF树及TF信息的提取工具,感兴趣的朋友一起学习下吧
    2023-01-01
  • Kettle下载安装pdi-ce-7.1.0.0-12教程

    Kettle下载安装pdi-ce-7.1.0.0-12教程

    Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制,今天通过本文给大家分享Kettle下载安装pdi-ce-7.1.0.0-12的过程,感兴趣的朋友一起看看吧
    2022-11-11
  • JetBrains 学生认证教程(Pycharm,IDEA… 等学生认证教程)

    JetBrains 学生认证教程(Pycharm,IDEA… 等学生认证教程)

    这篇文章主要介绍了JetBrains 学生认证教程(Pycharm,IDEA… 等学生认证教程)文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09

最新评论