摘要:使用Git回退命令reset回退代码到某次commit。

  需求背景:

需要回滚提交的代码的场景常常是如下三个:

  • 提交代码到错误Git分支;
  • 提交的代码不需要上线了,而同一分支有需要上线的代码;
  • 提交了不需要提交的代码。

  解决办法:使用Git回滚命令reset

  Git回滚命令有如下三个使用方式,请因地制宜,切换到指定分支后,根据自己的情况选择合适的那个:

git reset --hard HEAD^ 回退到上个版本。
git reset --hard HEAD~n 回退到前n次提交之前,若n=3,则可以回退到3次提交之前。
git reset --hard commit_sha 回滚到指定commit的sha码,推荐使用这种方式。

  示例 在终端切换到项目所在目录之后,基于下图中的commit SHA进行代码回滚:

git reset --hard 05ac0bfb2929d9cbwiener75e52ecb011950fb

拷贝SHA码

  hard是强制执行的意思,执行上述某条命令后,本地文件就会被修改,回滚到指定commit SHA。如果再执行如下命令,则会强推到远程仓库,进而修改远程仓库的文件:

git push origin HEAD --force

  开发过程中,总是遇到不小心提交不能提交的代码,有了reset必杀技,再也不用担心错误提交代码了。至此,大功告成。

关于reset命令的另一用法,请戳我

Git回滚命令reset|回退代码到某次commit的更多相关文章

  1. git回滚命令reset、revert的区别

    ##使用git,总有一天会遇到下面的问题: (1)改完代码匆忙提交,上线发现有问题,怎么办? 赶紧回滚. (2)改完代码测试也没有问题,但是上线发现你的修改影响了之前运行正常的代码报错,必须回滚. 所 ...

  2. git代码回滚:Reset、Checkout、Revert的选择

    代码回滚:Reset.Checkout.Revert的选择 Zhongyi Tong edited this page on Dec 8, 2015 · 5 revisions Pages 19 Ho ...

  3. Git回滚代码暴力法

    Git回滚有多种方式,这里使用的是[强制提交到远程分支] 效果为:如回滚前的提交记录是 1.2.3.4,使用这种方法回滚到2,那么提交记录就变成了1.2. 操作方法: 需要在本地的Git仓库,右键选择 ...

  4. Git回滚代码

    回滚命令: 1.回退到上个版本 $ git reset --hard HEAD^ 2.回退到前2次提交之前,以此类推,回退到n次提交之前 $ git reset --hard HEAD~2 3.退到/ ...

  5. 代码回滚:Reset、Checkout、Revert的选择

    代码回滚:Reset.Checkout.Revert的选择 Git仓库有三个主要组成——工作目录,缓存区和提交历史. 从图中我们可以看出,缓存区或者叫索引,其实是指一整套即将被下一个提交的文件集合.也 ...

  6. git 回滚方式

    git push 命用于从将本地的分支版本上传到远程并合并. 命令格式如下: git push <远程主机名> <本地分支名>:<远程分支名> 如果本地分支名与远程 ...

  7. git回滚

    Git回滚的常用手法 07net01.com 发布于 4小时前 评论 传统VCS的回滚操作 对于版本控制系统VCS来说,回滚这个操作应该是个很普通也是很重要的需求. 如果你是传统VCS,比如SVN或者 ...

  8. git回滚操作系列

    git回滚操作系列 准备工作 本地环境 线上环境 分支 master 场景1 线上环境回滚,同步线上与本地操作 线上环境当前与本地一致 先把线上回滚至早期 获取提交日志 [root@root]# gi ...

  9. 安装.NET FRAMEWORK 4.5安装进度条回滚之后发生严重错误 代码0x80070643

    安装.NET FRAMEWORK 4.5安装进度条回滚之后发生严重错误  代码0x80070643 注意: 回滚完成后,不要急着点击完成 查看日志:用IE浏览器打开,最后红色部分就是要查看的部分,本人 ...

  10. git merge 撤销与git 回滚

    git merge提交后恢复 http://blog.psjay.com/posts/git-revert-merge-commit/ git回滚 https://www.jianshu.com/p/ ...

随机推荐

  1. Selenium 项目搭建过程

    Selenium 环境搭建多多少少大概有4.5次了,每次都有东西遗忘,整理下大概的过程: 安装python,下载exe文件 C:\Users\lic\AppData\Local\Programs\Py ...

  2. KTransformer实战DeepSeek-R1-1.58bit量化模型

    技术背景 在上一篇文章中,我们介绍过KTransformers大模型高性能加载工具的安装和使用方法.但是当时因为是在一个比较老旧的硬件上面进行测试,其实并没有真正的运行起来.现在补一个在KTransf ...

  3. 使用 HBuilderX 轻松解决 CSS 代码在一行的问题

    前言 最近在做博客园的界面美化,用的是园内大佬的开源项目,配置超级简单,只需要复制粘贴代码就好啦. 但在粘贴 CSS 代码时遇到一个问题,那就是所有代码都挤在了一行,没有一点排板的样子(如下图),对我 ...

  4. Vue3 值得注意的新特性

    Vue3 值得注意的新特性 Vue3 新特性介绍 片段 组合式 API 单文件组件组合式 API 语法糖 (<script setup>) Teleport Suspense 实验性 SF ...

  5. anaconda创建新环境

    博客地址:https://www.cnblogs.com/zylyehuo/ anaconda创建新环境 conda create -n 环境自定义的名称 python=版本号 anaconda指定路 ...

  6. 安装Realtek RTL8111/RTL8168网卡驱动详解(error~eth0:no such device)

    昨天给linux系统重新编了个内核linux2.6.31.9,进入新版本的内核之后,发现机子上不了网了.好像每次新编译一个内核版本,网卡都会出问题,之前也写过解决网卡问题的blog,不过比较简单,这里 ...

  7. 使用PowerPoint优雅地更改证件照底色

    使用PowerPoint优雅地更改证件照底色 首先我们打开一张空白的演示文稿,并将要修改的证件照进行粘贴.(图片来自窝窝摄影,侵删) 选中图片,点击 格式,再点击 删除背景. 点击标记要保留的区域,对 ...

  8. TdxpageControl融合窗口和free

    for I := cxpgcntrl1.PageCount - 1 downto 0do begin if cxpgcntrl1.Pages[i].Caption <> '首页' then ...

  9. 搭建Trae+Vue3的AI开发环境

    从2024年2025年,不断的有各种AI工具会在自媒体中火起来,号称各种效率王炸,而在AI是否会替代打工人的话题中,程序员又首当其冲. 作为一个后端开发,这篇文章基于Trae工具,来创建和运行一个简单 ...

  10. Rider搭建C#开发环境

    1.安装DotNet-SDK 下载链接:https://dotnet.microsoft.com/download 安装完成后配置环境变量,然后在cmd窗口运行:dotnet --info命令显示当前 ...