github学习之旅(四)—— 工作区、暂存区、仓库区

一、Git 工作流程

Git 是一个开源的分布式版本控制系统,自然就是为了记录我们的文件变更,它的工作流程如下,我们在本地(workspace)的更改,可以提交到暂存区(Index),提交到暂存区之后,我们可以继续在本地做变更,再提交到暂存区,最后等我们觉得合适了,再一次性提交到版本库(Repository),这时也就被Git跟踪起来了,也就是一个个的历史档案,每一个历史档案都会有一个独一无二的编码,将来我们可以查看每次历史档案的变更的详细内容。

接下来,说明一些关于这3个状态的一些详细命令。

 

二、新建代码仓库

代码仓库,也就是文件夹,但它区别于普通的文件夹,也就是会被Git跟踪,我们有如下俩种方式新建代码仓库。

1、本地新建

// 在当前目录新建一个Git代码库
git init

在我的桌面有个git-learning文件夹,该文件夹下面有一个子文件夹demo。如下。

 

 

 执行以下命令,并且出现如下信息,即可完成一次本地代码库的创建。

 

 

 

 2、远程克隆

第二种方式,就是克隆啦,也就是把远程仓库(github)给拉取到本地。比如我想把阮一峰老师的es6tutorial仓库给克隆下来。

首先进入阮一峰老师的github个人主页,找到该仓库并进入该仓库,并点击箭头所指区域,即可复制该仓库的url,如下

 

 

 

再在我们的本地执行git clone命令,即可。

 

 

三、把修改的文件提交到暂存区

如下图所示,我们进入demo文件夹,然后新建了abc.txt文本文件,并写入内容hello。然后执行了一次 git status 命令,这个命令是检查当前文件夹下的文件状态的,可以看到,abc.txt颜色为红色,并且出现untracked files 字眼,也就是说,abc.txt文件暂时没有被跟踪。

 这时我们可以通过git add 命令把文件放进暂存区,这个命令有俩种用法,如下:

// 把所有未跟踪的文件放进暂存区
git add .

// 把指定的文件放进暂存区
git add abc.txt

 

 

 

 可以看到,我们执行了 add 命令之后,再次 git status,abc.txt文件名变成了绿色,说明,已被暂存。

 我们,可以再次对工作区修改,然后再次丢进暂存区。如下。

 

至此,我们在demo工作区,新建了一个abc.txt文件,丢进暂存区,然后再次新建一个def.txt文件,再次丢进暂存区,所以,我们的暂存区,有俩个已被跟踪的文件了。

 

四、把暂存区的文件放进本地版本库

 

 要想真正的被版本库所记录,并最终形成一个一个带有编号的版本,是需要放进本地版本库的,暂存区,我觉得只是一个用来控制提交颗粒度的区域,就是可以分批次的放进暂存区,然后一次性放进版本库。此时用到的命令是commit。语法如下:

git commit -m 此次提交的说明

 

 

 上面图片所示,已经通过commit命令提交到本地版本库了,再次执行git status命令,可以看到提示信息:没有文件可以提交,工作区域是干净的。

说明:这里有一个小技巧,就是直接将文件从工作区提交到仓库,前提是该文件已经有仓库中的历史版本,语法如下:

git commit -a -m [message]

试验一下,

 

继续在abc.txt文本文件中写入内容haha,通过以上命令直接添加进本地版本库,没问题。

 

五、查看仓库中的所有版本记录

刚刚我们已经提交了2次了,应该有2个版本了,可以通过git log命令,查看,

git log

 

 

 可以看到,通过这个命令,可以查看每个版本的编码、作者、版本生成的时间、版本生成时的备注说明。

但是,我们通过log命令,只是看到了一个列表,并没有详细的看到版本中的变更,如果需要查看某一个版本的详细变更,可以通过 git show 命令,语法及示例如下:

git show 版本的编号

 

可以看到,+ haha字是绿色的,说明haha这些文字是新增加的,如果是红色,就是删除的。

至此,如何初始化一个本地仓库,再对这个仓库进行一些修改(包括增、删、改),接着把修改的文件放进暂存区,最后把暂存区的文件放进版本库进行记录,整个流程已经跑通,在这个过程中,可以随时通过 git status查看这个仓库中的文件状态,也可以通过git log查看版本库中的所有变更,还可以通过git show命令查看每一次版本的详细变更内容,其实,每一个命令都有复杂的参数可以配置,后续接着介绍。我们此时也没有把本地仓库与远端github仓库进行关联起来,一篇文章太长,我自己都懒得看了,分开讲。

 

posted @ 2020-03-07 13:32  徐林俊  阅读(467)  评论(0编辑  收藏  举报