【随笔】Git 高级篇 -- 撤销变更(十四)

请添加图片描述

  • 💌 所属专栏:【Git】

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

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

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


前言

  大家好,又见面了,我是夜阑的狗🐶,本文是专栏【Git】专栏的第十四篇文章;
  这是今天学习到Git 高级篇 – 撤销变更 💖💖💖,开启新的征程,记录最美好的时刻🎉,每天进步一点点。
  专栏地址:【Git】 , 此专栏是我是夜阑的狗对Git,Gitee等工具使用过程的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。
  如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。


一、Git 撤销变更

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

在这里插入图片描述

1、介绍

  在 Git 里撤销变更的方法很多。和提交一样,撤销变更由底层部分(暂存区的独立文件或者片段)和上层部分(变更到底是通过哪种方式被撤销的)组成。我们这个应用主要关注的是后者。
  主要有两种方法用来撤销变更 —— 一是 git reset,还有就是 git revert。接下来咱们逐个进行讲解。

2、示范

(1)Git Reset

  git reset 通过把分支记录回退几个提交记录来实现撤销改动。你可以将这想象成“改写历史”。git reset 向上移动分支,原来指向的提交记录就跟从来没有提交过一样。让我们来看看演示:

git reset HEAD~1

请添加图片描述

   Git 把 main 分支移回到 C1;现在我们的本地代码库根本就不知道有 C2 这个提交了。(注意:在reset后, C2 所做的变更还在,但是处于未加入暂存区状态。

(2)Git Revert

   虽然在你的本地分支中使用 git reset 很方便,但是这种“改写历史”的方法对大家一起使用的远程分支是无效的哦!为了撤销更改并分享给别人,我们需要使用 git revert。来看演示:

git revert HEAD

请添加图片描述

  在这里我们看到要撤销的提交记录后面居然多了一个新提交!这是因为新提交记录 C2' 引入了更改 —— 这些更改刚好是用来撤销 C2 这个提交的。也就是说 C2' 的状态与 C1 是相同的。revert 之后就可以把你的更改推送到远程仓库与别人分享啦。
  要完成此关,分别撤销 local 分支和 pushed 分支上的最近一次提交。共需要撤销两个提交(每个分支一个)。记住 pushed 是远程分支,local 是本地分支 —— 这么说你应该知道用分别哪种方法了吧?

3、实战

  从前面了解到具体的实现的步骤,就可以开始实战啦。这里给大家说一下这个练习网站的一些使用技巧,

  • help 指令

  执行这个命令后就会有个帮助信息的弹窗。
在这里插入图片描述

  • levels 指令

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

在这里插入图片描述

  • 目标

在这里插入图片描述

  • 开始结构

在这里插入图片描述

  • Step 1、撤销 local

  这里为了撤销本地提交,所以要用 git reset 指令来进行撤销,这样只能修改到本地记录;

git reset HEAD~1

在这里插入图片描述

  • Step 2、指向pushed

  在撤销 pushed 之前,首先把 HEAD 指向 pushed 分支;

git checkout pushed

在这里插入图片描述

  • Step 3、撤销pushed

  这里为了撤销远端分支,需要使用 git revert 来进行撤销,这样远程分支也有撤销 commit ,协同开发者也会看到,项目过程中运行该命令可能会比较多点;

git revert HEAD

在这里插入图片描述

  达成目标之后就会有成功的提示。

在这里插入图片描述


总结

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

在这里插入图片描述

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

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

更多专栏订阅:



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

最近更新

  1. TCP协议是安全的吗?

    2024-04-06 06:58:07       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-06 06:58:07       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-06 06:58:07       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-06 06:58:07       20 阅读

热门阅读

  1. Azure Firewall rule limits and calculations

    2024-04-06 06:58:07       14 阅读
  2. Linux文件查找命令详解——以CentOS为例

    2024-04-06 06:58:07       13 阅读
  3. Selenium 饼图自动化测试

    2024-04-06 06:58:07       13 阅读
  4. 深入理解微信小程序的自定义组件模型

    2024-04-06 06:58:07       13 阅读
  5. SFTP服务详解:安全高效的文件传输新选择

    2024-04-06 06:58:07       12 阅读
  6. 数据结构——顺序表(C语言)

    2024-04-06 06:58:07       18 阅读
  7. python学习笔记——函数

    2024-04-06 06:58:07       14 阅读