git工作区暂存区与版本库基本理解及提交流程

目录
  • 一、git的三个区的基本理解
    • 1、工作区
    • 2、版本库
    • 3、暂存区
  • 二、工作区中.git目录
  • 三、通过提交流程理解三个区
    • 1、工作区新加文件 index.html
    • 2、将index.html提交到暂存区
    • 3、将暂存区内的内容提交到版本库
    • 4、将本地版本推送到github上

一、git的三个区的基本理解

1、工作区

上节课我们已经从github上clone了工程到本地,这个git-demo1的文件夹内部,就是我们的工作区,编写代码就在这个目录下进行,比如:

更加直观一点,工作区就是指我们项目的根目录,用VS Code工具打开

2、版本库

在工作区(项目根目录)中有一个隐藏的.git目录,这个目录就是版本库

具体结构如下图:

3、暂存区

版本库中包含了暂存区和版本信息。

暂存区从字面上去理解就是用来暂时保存项目的地方,实际上它的作用和它的名字是一致的,暂存区可以起到过渡的作用,当我们写代码修改了一些文件的时候,可以把修改的代码提交到暂存区保存,然后接着写代码,接着再提交到暂存区保存,写完某些代码觉得没什么可以修改的时候,可以将暂存区里面的文件一次性提交到版本库

具体结构如下图:

二、工作区中.git目录

从上面介绍的一点可以看出,.git目录是很重要的,这里目录中其实还包含了很多文件和文件夹,如下:

每个文件和文件夹都有具体的作用:

 

1.hooks文件夹,这个文件夹下存放一些shell脚本,可以设置一些特定的git命令

后触发相应的脚本,在搭建一些git托管系统的时候会用到

2.info文件夹,这里包含了一些git仓库信息

3.logs文件夹,保存所有更改的引用记录,继续打开logs文件夹,有refs文件夹和HEAD文件

4.objects文件夹,该目录存放所有的git对象

5.refs/heads文件夹,存储本地所有分支文件

6.refs/tags文件夹,当给当前分支打上标签时,就会在tags文件夹下,生成对应文件

7.config文件,这个是git仓库的配置文件

8.description文件,仓库的描述信息

9.HEAD文件里面只存储了当前分支的关联

10.index文件,这个文件就是我们前面提到的暂存区(stage),是一个二进制文件

三、通过提交流程理解三个区

1、工作区新加文件 index.html

这样,三个区的情况是下面这个样子

可以使用git status命令,查看当前文件状态

 

git status

2、将index.html提交到暂存区

工作区提交到暂存区

单个文件提交 命令格式: git add 文件名

所有文件提交 命令格式: git add

git add index.html

其实在VS Code工具中,也可以看到明显的变化

仅在工作区时:

提交到暂存区时:

大概的效果如下:

3、将暂存区内的内容提交到版本库

命令格式: git commit -m 注释

git commit -m '这是第一次提交测试'

效果如下:

可以使用 git log 命令来查看版本库中已经存在的版本

git log

4、将本地版本推送到github上

命令格式:git push -u origin master 上面命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。

注意,执行commit提交到版本库之后,暂存区的文件就会消失了,再次执行git status可以看到效果

可以到github上查看当前的项目版本是否提交

效果如下:

以上就是git工作区暂存区与版本库基本理解及提交流程的详细内容,更多关于git工作区暂存区版本库提交流程的资料请关注我们其它相关文章!

(0)

相关推荐

  • Git基础之git在项目中的协作模式

    目录 1.分布式工作流程 2.集中式工作流 3.分支工作流 4.GitFlow 工作流(最流行) 5.Forking 工作流(偶尔使用) 6.总结 1.分布式工作流程 与传统的集中式版本控制系统(CVCS)相反,Git 的分布式特性,使开发者间的协作变得更加灵活多样. 在集中式版本控制系统中,每个开发者就像是连接在集线器上的节点,彼此的工作方式大体相像. 而在 Git 中,每个开发者同时扮演着节点和集线器的角色.也就是说, 每个开发者既可以将自己的代码贡献到其他的仓库中,同时也能维护自己的公开仓

  • Git工作流演示及三种工作方式

    目录 集中式工作流(不常用) Forking 工作流(偶尔使用) GitFlow 工作流(最流行) Git工作流演示 集中式工作流(不常用) 集中式工作流像SVN一样,以中央仓库作为项目所有修改的单点实体.所有修改都提交到 Master分支上.这种方式与 SVN 的主要区别就是开发人员有本地库,但是Git 很多特性并没有用到. Forking 工作流(偶尔使用) Forking 工作流是在 GitFlow 基础上,充分利用了 Git 的 Fork 和 pull request 的功能以达到代码审

  • Git工作流模式及命令的使用讲解

    目录 Git的工作方式 集中式工作流 功能分支工作流 Gitflow工作流 维护分支 工作流程 Forking工作流 Pull Request Git的工作方式 分为集中式工作流.功能分支工作流.Gitflow工作流和Forking,其中集中式工作流和功能分支工作流是已经使用过的,Gitflow和Forking两种工作流暂时没有使用过. 集中式工作流 一个远程仓库,一个主分支master,团队每个成员都有一个本地仓库,在本地仓库中进行代码的编辑.暂存和提交工作: git add <some fi

  • Git代码提交流程及git命令汇总(基础篇)

    基本了解 git命令是一些命令行工具的集合,它可以用来跟踪,记录文件的变动.比如你可以进行保存,比对,分析,合并等等.这个过程被称之为版本控制.已经有一系列的版本控制系统,比如SVN, Mercurial, Perforce, CVS, Bitkeepe等等. Git是分布式的,这意味着它并不依赖于中心服务器,任何一台机器都可以有一个本地版本的控制系统,我们称之为仓库.如果是多人协作的话,你需要还需要一个线上仓库,用来同步信息.这就是GitHub, BitBucket的工作. 自己用Git有一段

  • Git在项目协作开发中所解决问题

    目录 1.Git的历史 Tips: 2.Git的特点 3.Git在项目协作开发中所解决的问题 1.Git的历史 Git是目前世界上最先进的分布式版本控制系统,开源.免费. Git 是 Linus (林纳斯)为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件. Tips: Linus在1991年创建Linux,现在已经成为最大的服务器系统软件了. Linux的壮大是靠全世界热心的志愿者: 在2002年以前,世界各地的志愿者把源代码文件发给Linus,然后由Linus本人通过手工方

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

    目录 1.Git的基本操作流程 2.工作区.暂存区.版本库的区别 (1)工作区 (2)版本库 (3)暂存区 (4)通过新增文件理解三个区的关系 (5)说明 1.Git的基本操作流程 初始化一个本地版本库,每个版本库仅需要执行一次. 将中央版本库内容克隆到本地版本库,每个客户机仅需要执行一次. 添加指定文件到版本控制管理(这一步只是添加到Git暂存区). 将添加.修改等操作,提交到本地版本库(将暂存区的内容提交到本地版本库).如果远程仓库的内容被别人修改了,需要先同步远程的内容,直接git pul

  • git工作区暂存区与版本库基本理解及提交流程

    目录 一.git的三个区的基本理解 1.工作区 2.版本库 3.暂存区 二.工作区中.git目录 三.通过提交流程理解三个区 1.工作区新加文件 index.html 2.将index.html提交到暂存区 3.将暂存区内的内容提交到版本库 4.将本地版本推送到github上 一.git的三个区的基本理解 1.工作区 上节课我们已经从github上clone了工程到本地,这个git-demo1的文件夹内部,就是我们的工作区,编写代码就在这个目录下进行,比如: 更加直观一点,工作区就是指我们项目的

  • Git 教程之工作区、暂存区和版本库详解

    Git 工作区.暂存区和版本库 基本概念 我们先来理解下Git 工作区.暂存区和版本库概念 工作区:就是你在电脑里能看到的目录. 暂存区:英文叫stage, 或index.一般存放在"git目录"下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index). 版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. 下面这个图展示了工作区.版本库中的暂存区和版本库之间的关系: 图中左侧为工作区,右侧为版本库.在版本库中标记为 "

  • git工作区和暂存区_动力节点Java学院整理

    Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD. 分支和H

  • IDEA:Git stash 暂存分支修改的实现代码

    场景: 当我们正在master分支开发新功能的时候,突然接到一个任务发现线上出现了一个紧急的BUG需要修复,由于没有打新分支做这部分新需求,这时正做到半途中....已经把本地代码修改得花里胡哨了,该怎么办,有什么办法快速解决吗? 这时Git stash这个非常实用的功能就派上用场了,将本分支的修改暂存起来. 涉及到的几个命令: 1.git status:查看工作区文件状态,列出已经修改的文件 2. git stash save '自定义描述' :暂存工作区的文件 3.git stash list

  • git stash暂存的操作方法

    为什么我们需要它 不得不说,在知道这个命令的时,以及之后的使用中,我都超级热爱这个命令,因为它真的太好用了. 给大家说一下我使用这个命令的场景: 此时我在 feature_666 分支,非常聚精会神加持高专注地实现一个功能 666 模块,简直键盘如飞的编写代码--- 然后这时,客户反馈出一个 bug , 非常严重,必须立马解决,优先级为 0 !!! 于是,我需要去到 release 分支去 checkout 新的分支去工作了,但是 666 功能还没完成怎么办? 此时我面临着一个选择题: A:提交

  • git版本库创建拓展添加文件到版本库教程

    目录 1.创建一个版本库 2.把文件添加到版本库 (1)首先这里再明确一下 (2)使用Windows的童鞋要特别注意: (3)把文件添加到版本库 3.总结 今天看关于Git的博客,发现总结关于Git仓库的文档,写的思路很清晰.可以和前一篇文章,对照的看,可以更加清晰理解. git-reference在线文档: http://shouce.jb51.net/gitbook/Getting-Started/index.html 版本库又名仓库,英文名repository,你可以简单理解成一个目录,这

  • git版本库介绍及本地创建的三种场景方式

    目录 1.Git版本库介绍 2.创建本地版本库 场景一:创建一个空的本地版本库. 场景二:项目中已存在文件时,创建该项目的本地版本库. 场景三:在GitHub网站上创建仓库,克隆到本地. 1.Git版本库介绍 每个Git版本控制系统的主机中,都可以包含若干个本地版本库,一般情况下一个本地版本库对应一个项目,用于对某个特定项目中的本地文件进行版本管理.其实,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除等操作Git都能跟踪到,以便任何时刻都可以追踪历史

  • intellij idea使用git stash暂存一次提交的操作

    分享一个小技巧: 在日常开发中有时候需要切换到另外的一个分支,但在某些条件下当前的分支上存在一些文件尚未提交,这时候就需要使用到idea自带的git stash功能来"暂存"一些尚未提交的文件,待切换到另外的分支上再提交到新的分支上去. 任意打开一个项目进行演示: step1:切换到分支a step2: stash changes step3:切换到分支b,unstash 这样就能避免一些不必要的merge操作,也能够正常切换到其他的分支了. 补充:文件在IDEA中已进行Git的Com

  • git创建版本库_动力节点Java学院整理

    什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以"还原". 所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录: $ mkdir learngit $ cd learngit $ pwd /Users/michael/learngit pwd命令用于显示当前目录.在我的Mac上,这个仓库位于/Us

随机推荐