前端人眼中的GIT(下)手把手教git使用

1,181 阅读4分钟

「这是我参与2022首次更文挑战的第13天,活动详情查看:2022首次更文挑战」。

书接上回,上一篇文章中我们有讲到git的安装,提交,以及同步。详情请查看上一篇文章,《前端人眼中的GIT(上)手把手教git使用》

今天我们来看看git的其他使用方式,例如查看提交的历史记录,回退各个版本,比较三个区域的不同,还用工作中常用的git分支

查看git的提交记录

git loggit log --oneline

上面两句代码的区别:

  1. git log 是显示详细的git记录
  2. git log --oneline 是将每条记录缩略成一行显示

例如:我向仓库中提交了两次,那么我们来看看两个语句的最终显示效果 git log

图片.png git log --oneline

图片.png

备注:我们所看到的一长串的乱码,那是git生成的每一次提交记录的id

比较区域之间的不同

git分为三个区,分别是工作区、缓存区、和仓库,工作流程上文中有详细说过

比较工作区和缓存之间的区别

前提是我们向缓存区添加过记录 例:项目中的02.html没有任何代码,现在我向02.html中写入代码
初始:

图片.png 变化

图片.png

运行git diff命令查看工作区与缓存区的区别

图片.png

运行git diff --chached 查看缓存区与仓库的区别

将上面工作区的记录提交到缓存区后,执行git diff --cached指令

图片.png

回退历史版本

回退工作区内容git checkout

git checkout 相当于ctrl+z,只不过比ctrl+z高级一点,它可以同时回退多个文件 例:/ 初始:

图片.png html修改后

图片.png 运行git checkout图片.png

回退缓存区内容指令git reset

回退仓库到指定历史记录

git reset --hard 历史记录id

历史记录id,git log出来的如下图

图片.png

git分支

查看分支(创建分支之前我们先来查看当前仓库所有分支)

git branch

图片.png 此时只有一个分支,分支名是master

创建分支

创建分支就相当于我们将项目文件夹复制了一份

Untitled ‑ Made with FlexClip.gif

命令

git branch 分支名

图片.png 创建了一个名为a的分支(这相当于将复制的项目文件重命名为a的操作)

切换分支 (创建分治后我们需要切换到创建好的分支)

指令:git checkout 分支名

图片.png 这一步相当于,使用一个新的vscode窗口打开复制的项目文件夹,接下来的所有代码操作都在这个新开的vscode中完成,这样我在新开的vscode中修改的所有操作,都不会影响到我原先的项目文件夹 这也是我们使用分支的最重要的原因,尽可能的不在仓库主分支上操作文件。

合并分支

指令:git merge 分支名 例:将子分支合并到主分支
步骤:

  1. 切换到将要合并的分支中(合并的目标分支)主分支
  2. 运行 git merge 子分支名

图片.png 这一步相当于将复制的项目文件夹与源文件夹合并

删除分支

指令:git branch 分支名 -dgit branch 分支名 -D 区别:

  1. git branch 分支名 -d 只能删除已经合并过的分支 相当于删除文件我们没有管理员权限
  2. git branch 分支名 -D 不论什么情况下的分支都能被删除(强制删除)相当于拥有管理员权限的删除文件 例:删除刚刚新建的分支a
    步骤:
  3. 切换到其他分支中 主分支
  4. 运行 git branch 分支名 -d 图片.png 删除分支的原因:一般都是觉得这个版本的代码不OK,才会执行这一步操作

扩展:

修改同步远程仓库地址,使用场景

1、线上仓库更名 2、需要上传到其他仓库

指令:git remote set-url origin 新地址

下载线上仓库

第一步:初始化本地仓库git init
第二步:克隆远程仓库 git clone 远程仓库地址

线下同步线上的仓库

本地运行 git pull

以上就是我对git知识的全部分享啦