用一个实战来学会git的基础命令

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 系列文章目录
  • 前言
  • 前提
    • 1、git版本管理的理解
  • 使用步骤
    • 1.配置
    • 2.基础操作
      • 1)、初始化仓库
      • 2)、添加文件到仓库
          • a、初始化仓库完成后我们就可以在这个仓库中进行任意操作,然后通过git来进行管理。下面我们在仓库中创建一个文件。
          • b、创建完成后可以使用命令将文件从**工作区**提交到**暂存区**。
          • c、删除暂存区中的内容
          • d、将暂存区的的内容commit到本地仓库中
          • e、说了怎么多我们来实际看看一个文件在仓库中的一个状态是什么样子的。使用命令:
      • 3)、使用git来管理项目
      • 4)、使用git在版本之间进行切换
      • 5)、对比工作区文件和暂存区文件的不同
  • 总结


前言

本文主要是用实战来讲解git的基础命令的使用,其他例如git简介、github、分支冲突解决等问题可看本系列的其他文章。

前提

本文讲不介绍git的安装等问题,演示采用的是windwos下的git。

1、git版本管理的理解

对于git版本管理我们可以将它理解为一个树,每一次的commit都是在当前节点基础上增加一个子节点,然后HEAD指针指向新的节点,后期切换版本也是将HEAD指针指向切换到的版本即可。
用一个实战来学会git的基础命令_第1张图片

使用步骤

1.配置

1)、在git使用之前需要先进行一些全局的配置,最重要的就是用户名和邮箱。设置的目的就是为了在将代码提交时看到由谁提交,后续可以通过什么邮箱联系。git是不会对这些信息进行校验的,需要自己填写正确。

git config --global user.name "your name"      // 设置全局用户名
git config --global user.email "your email"    // 设置邮箱

其中, --global 指定为全局配置,不使用该参数,则为当前所在仓库配置。

2)、我们可以查看所做的配置信息:

git config -l

当然,我们也可以查看【C:UsersAdministrator.gitconfig】文件来查看其中的配置信息
git配置信息
3)、除了用户名、邮箱之外,还有很多的配置可以用来自定义 Git,不在本文讨论范围之内,所以不进行讨论。

2.基础操作

1)、初始化仓库

git init

将当前目录配置为一个git仓库,仓库信息保存在.git的隐藏目录下。删除它也就将这个仓库删除掉了。
用一个实战来学会git的基础命令_第2张图片

2)、添加文件到仓库

a、初始化仓库完成后我们就可以在这个仓库中进行任意操作,然后通过git来进行管理。下面我们在仓库中创建一个文件。

用一个实战来学会git的基础命令_第3张图片

b、创建完成后可以使用命令将文件从工作区提交到暂存区
git add readme.txt       // 将readme.txt添加到暂存区
git add .                // 将当前目录下所有修改添加到暂存区,可添加规则忽略一些文件

gitadd

c、删除暂存区中的内容
git rm --cached XX    // 将提交到暂存区的文件删除

gitrmcached

其实,可以这样理解这步操作,我们在当前仓库中的所有修改都是在工作区中的修改,我们使用git add后就将修改保存到内容中(也就是暂存区),我们可以对这次的提交进行修改,是不会留下任何记录的。比如说在工作中写了一段有问题的代码提交到暂存区,后面发现了这个问题,我们及时修改了再次提交,是不会留下任何修改记录的,别人也发现不了你写过有问题的代码,但是commit之后就会留下记录。

d、将暂存区的的内容commit到本地仓库中
git commit -m "给自己看的备注信息":将暂存区的内容提交到当前分支

用一个实战来学会git的基础命令_第4张图片

e、说了怎么多我们来实际看看一个文件在仓库中的一个状态是什么样子的。使用命令:
git status

我们创建一个新文件text,然后使用git status命令来查看状态,发现之前text和readme.txt都是红色的,并且提示我们需要没有存到暂存区。readme.txt是红色的是因为我们在上面使用git rm --cached readme.txt将readme.txt从暂存区中删除了。
用一个实战来学会git的基础命令_第5张图片
使用git add .来讲所有文件保存到暂存区,再使用git status来查看状态。
此时状态已由刚才的红色转变为现在的绿色。提示说new file:readme.txt和new file:text。这时文件就已经被存放到暂存区,可以理解为我们把当前的状态保存了一下。

用一个实战来学会git的基础命令_第6张图片
使用git commit命令将文件提交到本地仓库,使用git status来查看状态。
此时我们看到现在已经没有需要提交的文件了。证明之前的文件已经作为一个版本存放再本地仓库中。
用一个实战来学会git的基础命令_第7张图片

3)、使用git来管理项目

上面我们向本地仓库提交了readme.txt和text两个文件,后续我们肯定会对它俩进行一些修改,我们再修改后就可以将他们作为一个新的版本提交的本地仓库中。
用一个实战来学会git的基础命令_第8张图片
现在我们已经提交了两个版本了,那么改如何查看这些历史提交记录呢?

git log       // 查看当前分支的所有版本

用一个实战来学会git的基础命令_第9张图片
下面我们多增加几个版本,方面我们后续演示如何在版本之间进行切换。
在readme.txt文件中,111为第一个版本,222为第二版本,以此类推我们增加到5个版本。

用一个实战来学会git的基础命令_第10张图片
用一个实战来学会git的基础命令_第11张图片
查看文件内容和仓库状态
用一个实战来学会git的基础命令_第12张图片
查看提交记录
用一个实战来学会git的基础命令_第13张图片
查看HEAD指针的移动历史
用一个实战来学会git的基础命令_第14张图片

4)、使用git在版本之间进行切换

使用如下几个命令即可在版本之间来回穿梭:

git reset --hard HEAD^ 或 git reset --hard HEAD~    // 将代码库回滚到上一个版本
git reset --hard HEAD^^                             // 往上回滚两次,以此类推
git reset --hard HEAD~100                           // 往上回滚100个版本
git reset --hard 版本号                             // 回滚到某一特定版本

a、往前回退两个版本。git log只会显示到HEAD的提交记录
用一个实战来学会git的基础命令_第15张图片
b、再回滚回去之前的版本
用一个实战来学会git的基础命令_第16张图片
用一个实战来学会git的基础命令_第17张图片

5)、对比工作区文件和暂存区文件的不同

git diff XX   // 查看XX文件相对于暂存区修改了哪些内容

用一个实战来学会git的基础命令_第18张图片

总结

此时我们对git的基本命令已经介绍完毕,本文都是针对git本地仓库进行操作的,下一章将会讲解针对远程仓库的演示。

你可能感兴趣的:(Git,git,github)