💌 所属专栏:【Git】
😀 作 者:我是夜阑的狗🐶
🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询!
💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘
文章目录
- 前言
- 一、Git 相对引用1
- 1、介绍
- 2、示范
- 3、实战
- 总结
前言
大家好,又见面了,我是夜阑的狗🐶,本文是专栏【Git】专栏的第十二篇文章;
这是今天学习到Git 高级篇 – 相对引用1 💖💖💖,开启新的征程,记录最美好的时刻🎉,每天进步一点点。
专栏地址:【Git】 , 此专栏是我是夜阑的狗对Git,Gitee等工具使用过程的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。
如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。
一、Git 相对引用1
这里给大家推荐一个好用的 Git在线练习地址。在这练习网站里面也有自己的教程,就让我们一步一步跟着教程学习吧,记录下自己的所感所悟。前面已经简单的讲解了 Git 基础篇,接下来就跟着学习高级篇吧。话不多说,让我们原文再续,书接上回吧。
1、介绍
通过指定提交记录哈希值的方式在 Git 中移动不太方便。在实际应用时,并没有像该练习网站中这么漂亮的可视化提交树供你参考,所以你就不得不用 git log 来查查看提交记录的哈希值。
并且哈希值在 Git 中也会更长(基于 SHA-1,共 40 位)。这里本人直接用 git log 展示了哈希值:
d66d0e3bb37764caf7d95ffa4eff53359e1da9d1
比较令人欣慰的是,Git 对哈希的处理很智能。你只需要提供能够唯一标识提交记录的前几个字符即可。因此我可以仅输入d66d 而不是上面的一长串字符。
正如前面所说,通过哈希值指定提交记录很不方便,所以 Git 引入了相对引用。这个就很厉害了!使用相对引用的话,你就可以从一个易于记忆的地方(比如 JMFive 分支或 HEAD)开始计算。相对引用非常给力,这里介绍两个简单的用法:
-
使用
^
向上移动 1 个提交记录; -
使用
~<num>
向上移动多个提交记录,如~3
;
2、示范
首先看看操作符 (^)。把这个符号加在引用名称的后面,表示让 Git 寻找指定提交记录的 parent 提交。所以 main^
相当于“main 的 parent 节点”。main^^
是 main
的第二个 parent 节点。现在咱们切换到 main 的 parent 节点
执行指令:
git checkout main^
搞定。这种方式是不是比输入哈希值方便多了!
你也可以将 HEAD
作为相对引用的参照。下面咱们就用 HEAD
在提交树中向上移动几次。
执行指令:
git checkout C3
git checkout HEAD^
git checkout HEAD^
git checkout HEAD^
很简单吧?!我们可以一直使用 HEAD^ 向上移动。
要完成此关,切换到 bugFix 的 parent 节点。这会进入分离 HEAD 状态。
如果你愿意的话,使用哈希值也可以过关,但请尽量使用相对引用!
3、实战
从前面了解到具体的实现的步骤,就可以开始实战啦。这里给大家说一下这个练习网站的一些使用技巧,
- help 指令
执行这个命令后就会有个帮助信息的弹窗。
- levels 指令
执行完这个命令之后就能看到关卡目录了。
- 目标
- 开始结构
- 相对引用
通过分支名的相对索引把 HEAD 指向对应的位置;
git checkout bugFix^
运行结果如下图所示:
- 哈希值
通过提交记录的哈希值直接把 HEAD
指向对应的位置。
git checkout C3
运行结果如下图所示:
完成目标后就有通关提示。
总结
感谢观看,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹 🌹 🌹
也欢迎你,关注我。👍 👍 👍
原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!下期再见。🎉
更多专栏订阅:
- 😀 【LeetCode题解(持续更新中)】
- 🌼 【鸿蒙系统】
- 👑 【Python脚本笔记】
- 🚝 【Java Web项目构建过程】
- 💛 【微信小程序开发教程】
- ⚽ 【JavaScript随手笔记】
- 🤩 【大数据学习笔记(华为云)】
- 🦄 【程序错误解决方法(建议收藏)】
- 🚀 【软件安装教程】
订阅更多,你们将会看到更多的优质内容!!