前言

 在我们开发过程中,因各种原因,避免不了将业务代码回滚至指定版本,或者具体一些到某次commit。
下面我们将具体步骤及具体实现做分析。

操作前阅读

  在代码回归操作过程中主要 围绕 git reset 命令进行,该命令会把版本库和工作目录改变为已知状态。具体来讲,git reset 调整 HEAD 引用指向指定的提交,默认情况下还会更新索引以匹配该提交。根据需要,git reset 命令也可以修改工作目录以呈现指定提交代表的项目修订版本。

  • git reset 命令有三个主要选项

  • --soft
      会将 HEAD 引用指向指定提交。索引和工作目录的内容保持不变。这个版本的命令有“最小”影响,只改变一个符号引用的状态使其指向一个新提交。

  • --mixed
      会将 HEAD 指向指定提交。索引内容也跟着改变以符合指定提交的树结构,但是工作目录中的内容保持不变。这个版本的命令将索引变成你刚刚暂存该提交全部变化时的状态,它会显示工作目录中还有什么修改。–mixed 是 git reset 的默认模式。

  • --hard
      这条命令将 HEAD 引用指向给定提交。索引的内容也跟着改变以符合给定提交的树结构。此外,工作目录的内容也随之改变以反映给定提交表示的树的状态。当改变工作目录的时候,整个目录结构都改成给定提交对应的样子。做的修改都将丢失,新文件将被删除。在给定提交中但不在工作目录中的文件将恢复回来。

具体步骤

 一般情况下,我们分为三个步骤就可以解决完代码回滚操作

第一步

  • 执行 git log命令查看日志,获取需要回退的版本号
    例如:

第二步

执行 git reset –-soft ,如 git reset --soft 4f5e9a90edeadcc45d85f43bd861a837fa7ce4c7 ,重置至指定版本的提交

第三步

执行 git push -f origin <branch_name> 强制提交当前版本号

  • >··< 此时恭喜你,你的代码回滚成功了

Git 回滚代码到指定版本相关推荐

  1. git回滚代码版本 强制提交代码

    git reset --hard [commit id] 回滚代码 git push --force 如果强制提交失败可以试试 git push origin 分支名 --force

  2. git 回滚代码踩坑

    2021.08.10 背景: 发版日,下午把开发分支benz合入到master分支了,值班人又基于master分支拉了rb分支了,同期上线的还有其他4个人的分支. 我合并代码master期间,由于和m ...

  3. Git回滚代码到某个tag

    开发中总会有人不小心将代码提交到错误的分支上,比如应该提到dev分支的代码提交到了master分支,可以使用git回滚到tag的方法进行回滚. 1.切换到待回滚分支 -- 查看分支 git branc ...

  4. idea git回滚代码

    当多个人对同一个微服务进行开发,合并代码,有时候会出现合并代码分支错误,这个时候需要将代码进行回滚操作. 本文介绍,使用idea可视化操作. 1.右键项目,git-show history ,可以看到 ...

  5. git回滚reset到指定分支

    在git中我们经常会遇到提交代码之后需要进行回滚的操作,可以通过git reset 命令进行回滚. 首先找到需要回滚到的提交的commit id ,然后通过: git reset --hard 老的c ...

  6. Git回滚代码到某个commit

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

  7. 拜托,不要再问我Git如何回滚代码

    Hey git学习篇(5) 这个是Git学习的第5篇内容,今天我们来讲讲Git如何做代码回滚. 代码回滚 不知道大家在平常开发时中没有犯过这样一个错误,就是把IDE的配置或者项目运行的本地配置文件上传 ...

  8. 【Gitlab】GIT回滚master分支到指定tag版本 并提交远程仓库

    [Gitlab]GIT回滚master分支到指定tag版本 并提交远程仓库 1 查看分支 git branch 2 切换到master分支 git checkout master 3 查看标签 git ...

  9. 『实用教程』使用Visual Studio自带的Git管理回滚代码版本

    使用Visual Studio自带的Git管理回滚代码版本 需求: 恢复本地某一时刻的版本,并提交覆盖远程版本 操作: 拉取远程最新版本至本地 提交所有更新 操作\查看历史记录,显示所有已提交更新,然 ...

最新文章

  1. 2019.08.04 新建随笔
  2. centos7 安装owncloud-10 自测部署安装
  3. Fix Missing Scripts
  4. Java 程序员必须掌握的 Linux 命令
  5. PHPmyadmin 和 MySQL 的配置笔记
  6. 两个系统交互方式有几种_创新性OriginOS系统,打造个性化交互方式,很给力
  7. 5 种编程语言可能注定失败!
  8. Linux下一块网卡设置多个IP地址
  9. [转载] 七龙珠第一部——第005话 邪恶沙漠的雅木茶
  10. 通过Java技术手段,某程序员发现自己被绿了!
  11. 解散群通知怎么写_德云社演员私联初二女生,随后德云社全员退出粉丝群,什么情况?...
  12. Java开发微信公众号
  13. 信号处理学习笔记2——维纳滤波器
  14. 3ds Max老崩溃是什么感觉?崩溃还没有保存文件?这个小细节你要注意了
  15. 页面加载时,有较长时间的白页,有可能是什么原因造成的
  16. 计算机加域后数据库无法登录,[MDT] 解决因加域客户端 Windows 登录身份引发的无法打开登录所请求的数据库故障...
  17. 25 - 线程池和指令系统
  18. 基于STC89C52RC的小车黑线钝角、锐角、迷宫、虚线循迹模块化代码
  19. 不要做一个只会抱怨的人
  20. 计算思维运用计算机的例子,计算思维案例及平时成绩讨论题资料.doc

热门文章

  1. 视频号、抖音必有一场大战
  2. 《把时间当做朋友》书摘
  3. easyui之excel导入数据
  4. c语言格式化字符串,C语言格式化输出小结
  5. 下雨天睡不够 去湿气功略拿走不谢
  6. Web入侵之利用编辑器漏洞入侵
  7. 基于深度学习的高精度塑料瓶检测识别系统(PyTorch+Pyside6+YOLOv5模型)
  8. 请问屏幕保护程序对液晶显示器有没有损害?
  9. 计算机病毒危害性分析,计算机病毒的毒性暨危害性分析系统
  10. GVS案例分享|乘新时代姑苏舫号,体验匠心智能控制