【随笔】Git 高级篇 -- 相对引用2 HEAD~n(十三)

  • 💌 所属专栏:【Git】

  • 😀 作  者:我是夜阑的狗🐶

  • 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询!

  • 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘

文章目录


前言

大家好,又见面了,我是夜阑的狗🐶,本文是专栏【Git】专栏的第十三篇文章;

这是今天学习到Git 高级篇 -- 相对引用2 💖💖💖,开启新的征程,记录最美好的时刻🎉,每天进步一点点。

专栏地址:【Git】 , 此专栏是我是夜阑的狗对Git,Gitee等工具使用过程的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。

如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。


一、Git 相对引用2

这里给大家推荐一个好用的 Git在线练习地址。在这练习网站里面也有自己的教程,就让我们一步一步跟着教程学习吧,记录下自己的所感所悟。前面已经简单的讲解了Git 相对引用1,接下来就跟着学习Git 相对引用的另外一个用法吧。话不多说,让我们原文再续,书接上回吧。

1、"~"操作符介绍

如果你想在提交树中向上移动很多步的话,敲那么多 ^ 貌似也挺烦人的,Git 当然也考虑到了这一点,于是又引入了操作符 ~。

该操作符后面可以跟一个数字(可选,不跟数字时与 ^ 相同,向上移动一次),指定向上移动多少次。**注意:后面是不能跟负数的。**咱们还是通过实际操作看一下吧。

2、示范

咱们用 ~ 一次后退四步。执行指令:

python 复制代码
git checkout HEAD~4

运行结果如下图所示:

搞定。多么的简洁 ------ 相对引用就是方便啊!这里使用相对引用最多的就是移动分支。可以直接使用 -f 选项让分支指向另一个提交。例如:

python 复制代码
git branch -f main HEAD~3

上面的命令会将 main 分支强制指向 HEAD 的第 3 级 parent 提交,运行结果如下图所示:

这就对了! 相对引用为我们提供了一种简洁的引用提交记录 C1 的方式, 而 -f 则容许我们将分支强制移动到那个位置。

既然你已经看过相对引用与强制移动分支的演示了,那么赶快使用这些技巧来挑战这一关吧!要完成此关,移动 HEADmainbugFix 到目标所示的位置。

3、实战

从前面了解到具体的实现的步骤,就可以开始实战啦。这一关至少要用到一次直接引用(哈希值)。这里给大家说一下这个练习网站的一些使用技巧,

  • help 指令

执行这个命令后就会有个帮助信息的弹窗。

  • levels 指令

执行完这个命令之后就能看到关卡目录了。

  • 目标
  • 开始结构
  • Step 1、移动HEAD

通过分支名的相对索引把 HEAD 指向对应的位置;

python 复制代码
git checkout C6

运行结果如下图所示:

  • Step 2、移动main

通过提交记录的哈希值直接把 HEAD 指向对应的位置。

python 复制代码
git branch -f main HEAD

运行结果如下图所示:

  • Step 3、移动HEAD
python 复制代码
git checkout bugFix~2

运行结果如下图所示:

  • Step 4、移动bugFix
python 复制代码
git branch -f bufFix HEAD~1

运行结果如下图所示:

完成目标后就有通关提示。**注意:但是这里我用4步,但答案是3步,这样的话我们可以把Step 1、2步进行合并,可以不用移动 HEAD 来提交 main ,直接用哈希值进行提交,这样就能满足要求啦。**具体命令如下:

javascript 复制代码
git branch -f main C6

总结

**  感谢观看,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹 🌹 🌹**

**  也欢迎你,关注我。👍 👍 👍**

**  原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!下期再见。🎉**

更多专栏订阅:

订阅更多,你们将会看到更多的优质内容!!

相关推荐
心灵宝贝33 分钟前
WinHex 20.8-SR1 安装教程详细步骤+下载
windows
hnlucky40 分钟前
安装vue的教程——Windows Node.js Vue项目搭建
前端·javascript·vue.js·windows·node.js
绅士玖1 小时前
理解 .env 文件和 .gitignore 文件的作用与最佳实践
前端·git·代码规范
不太可爱的叶某人1 小时前
【学习笔记】深入理解Java虚拟机学习笔记——第3章 垃圾收集器与内存分配策略
java·笔记·学习
水饺编程2 小时前
MFC 第一章概述
c语言·c++·windows·mfc
半导体守望者3 小时前
Kyosan K5BMC ELECTRONIC INTERLOCKING MANUAL 电子联锁
经验分享·笔记·功能测试·自动化·制造
不爱学英文的码字机器3 小时前
[Git] 标签管理
大数据·git·elasticsearch
晨曦backend4 小时前
Vim 复制/剪切/粘贴命令完整学习笔记
笔记·学习·vim
李少兄4 小时前
Windows 系统中修改文件默认打开方式
windows
GoldenaArcher4 小时前
Fullstack 面试复习笔记:HTML / CSS 基础梳理
笔记·面试·html