在上一篇的Git基础中,文末部分我们从大面上讲解了Git的整体架构组成。今天这一篇中就来详细说说本地仓库这一块的基础操作。

回顾 —— 本地仓库架构

我们要明确的是:Git本身是运行在本地的,以一个一个的本地仓库(repository)为工作单位,互不影响。 每个本地仓库的内部架构均如图所示:

在这里插入图片描述
解释一下这里边的几个重要概念:

本地仓库(repository)   // 实质为一个目录文件
├── 版本库(.git目录)   // 仓库初始化后添加的隐藏文件
│   └── 暂存区(stage) // Git的跟踪文件
│   └── master分支     // 最终提交的代码版本保存地
├── 工作区(workspace) // 实际开发中的项目目录

一. 新建并初始化仓库

一个本地的Git仓库(repository)实质为一个文件夹。 现在我们在桌面上手动创建一个名为Git-demo的文件夹,作为我们的第一个仓库文件。

双击进入该文件夹,右键打开Git Bash窗口,使用如下命令初始化该文件:

$ git init

在这里插入图片描述
本地仓库初始化后,出现的.git隐藏文件即为版本库。其中细分的暂存区和分支我们不需要关心,那属于Git的管理范围。

二. 添加项目文件

之后我们向Git-demo这个仓库文件夹内添加的任何文件都属于是工作区(workspace)的项目文件。

具体添加什么文件随意,看你心情~

在这里插入图片描述

三. 查看仓库状态

添加完项目文件后,继续在Git Bash窗口内执行以下命令来查看一下当前仓库的状态:

$ git init

在这里插入图片描述
未跟踪文件的文件名是红色的,意思是我们新添加的项目文件,还没有添加(add操作)到暂存区。

四. add添加为暂存文件

通过执行add操作,可以把新增的项目文件(未跟踪文件)添加到暂存区,来让Git持续跟进这些文件的修改情况。

add操作又具体可细分为以下三种情况:

$ git add .    // 一次性全部添加
$ git add -A   // 只提交修改的部分文件
$ git add xxx  // 添加指定文件

4.1 一次性全部添加

如果当前项目文件都是第一次创建,或者大部分的项目文件都修改过的时候,可以选择一次性把他们全部添加到暂存区。add . 就代表添加全部:

$ git add .

现在我们来执行一下,然后重新查看仓库状态:

在这里插入图片描述
可以看到,刚才的文件名都变成了绿色的。就是说,现在Git已经在监听它们的变化了,如果我们后来修改了文件内容,就需要重新提交暂存区。

4.2 只提交修改的部分文件

现在我们来修改一下README.md文件。简单添加了一行内容:

在这里插入图片描述
继续来看状态:

在这里插入图片描述
Git检测到了我们修改了暂存区的README.md文件。甚至我们还可以查看我们修改了什么:

$ git diff

在这里插入图片描述
现在来使用第二种add操作 —— 只添加修改的部分文件。可以看到状态都重新变绿了。

$ git add -A

在这里插入图片描述


拓展 —— .gitignore忽略文件

我们在添加暂存区的时候,有些文件内容是相对固定的,通常不会修改。比如这里的README.md就是这样的一个文件。那么每次全部提交(add .)时,都带上一个从未修改的文件就显得很没有必要了。

所以Git中支持我们创建一个.gitignore文件,来告诉Git每次添加时你要忽略的文件列表。

在这里插入图片描述
在其中写上README.md的文件名即可。

在这里插入图片描述


4.3 提交指定文件

这个也很简单,add后跟上文件名即可。比如新增一个文件:config.js。再执行命令,具体看动图:

$ git add config.js

在这里插入图片描述

五. commit提交为版本

添加到暂存区并没有完成。还需要最后一步:从暂存区通过commit操作最终提交至分支。

5.1 简述分支

简单来说一下什么是分支:

分支其实就是一个版本的历史线,按时间顺序记录着你每次提交的代码版本。

在这里插入图片描述
Git仓库在初始化的时候默认会创建一个master主分支。可通过以下命令来查看分支情况:

$ git branch

Git Bash中貌似不能这样查看了,但是还是可以从图中的两处位置看出来:

在这里插入图片描述

5.2 初次提交

有关分支的操作后续再说。先来看更基础的conmmit提交吧。它的命令为:

$ git conmmit -m '提交的描述信息'

-m-message的缩写,后面必须跟上你本次的描述信息。写什么都行,类似于代码的注释,只是为了让你好区分每次提交的版本。

在这里插入图片描述

5.3 查看提交记录

随着我们项目的深入,你commit的次数也会越来越多。在Git中支持查看你的提交历史(日志信息):

$ git log

目前我们只提交了一次,所以只有一条日志信息。

在这里插入图片描述
简单分析一下其中都记录了哪些内容:

  • 本次提交的版本号;
  • 分支信息;
  • 作者信息(姓名 邮箱);
    即我们之前配置过的全局(-- global)用户信息;
  • 提交日期;
  • 提交的描述信息;

六. 开发流程小结

提交完一个版本,我们还会继续coding,继而提交第二个,第三个直至最终版本。小结一下开发的流程:

① 工作区编辑项目文件;
② add添加到暂存区;

$ git add .

③ commit提交到分支;

$ git conmmit -m '提交的描述信息'
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐