问题描述

在开发的过程中,想要修改一个参数的命名。然后修改各种地方,并且push上码云的远程仓库。然后突然发现还要改很多地方,突然后悔不想改动了。那该怎么办呢?

处理步骤

  • 回退本地的git版本
  • 将本地的代码强制推送至远程仓库中

回退本地git版本

  • 首先查看git版本信息,使用git log
$ git log
commit 6fecbc4fc9d7e23f5c66a504a413cc1ed4ed7f0c (HEAD -> master, origin/master,origin/django-template, origin/HEAD, django-template)
Author: kubernete <357018097@qq.com>
Date: Thu Aug 15 22:24:16 2019 +0800 修改table行数的参数名为table-lines commit 0e149c39eb4401647a9468eaf2b68b45832dbcb2
Author: kubernete <357018097@qq.com>
Date: Thu Aug 15 22:05:07 2019 +0800 取消tab菜单的360度翻转动画效果 commit 7c4b1492616ae788e9f58461c72fc12f6c9b1e2d
Author: lijw <357018097@qq.com>
Date: Thu Aug 15 19:44:24 2019 +0800 编写设备机组列表中查询隐藏域填充显示table行数

看了上面的git提交日志,我不想要修改table行数的参数名为table-lines这次的代码提交,想直接回退到取消tab菜单的360度翻转动画效果的版本。 那么可以直接执行回退到上一版本。

  • 执行回退到上一版本,使用git reset --hard HEAD^
# 执行回退至上一次提交的版本
$ git reset --hard HEAD^
HEAD is now at 0e149c3 取消tab菜单的360度翻转动画效果 # 查看log确认一下
$ git log
commit 0e149c39eb4401647a9468eaf2b68b45832dbcb2 (HEAD -> master)
Author: kubernete <357018097@qq.com>
Date: Thu Aug 15 22:05:07 2019 +0800 取消tab菜单的360度翻转动画效果 commit 7c4b1492616ae788e9f58461c72fc12f6c9b1e2d
Author: lijw <357018097@qq.com>
Date: Thu Aug 15 19:44:24 2019 +0800 编写设备机组列表中查询隐藏域填充显示table行数

强制将本地代码推送至远程仓库

但是到了这里,其实只是本地回退了版本而已,远程仓库的并没有回退。如果想要将本地的代码直接push到远程仓库则会报错如下:

$ git push
To gitee.com:kubernete/Performance-Test-Management-demo.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@gitee.com:kubernete/Performance-Test-Management-demo.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

这里会提示需要更新远程仓库,如果更新执行git pull的话,又会将刚才回退的版本下载回来。

此时需要强制将本地代码推送至远程仓库之中,使用git push -f origin master

执行如下:

$ git push -f origin master
Total 0 (delta 0), reused 0 (delta 0)
remote: Powered By Gitee.com
To gitee.com:kubernete/Performance-Test-Management-demo.git
+ 6fecbc4...0e149c3 master -> master (forced update)
这样就GITHUB上的版本就是历史版本了,直接CLONE就可以下载下来 GIT回滚之后再滚回去:
使用git reflog查看之前操作的commit信息,然后使用 git reset --hard 7d2bc17 回到7d2bc17操作时对应的版本; 文章转载自:https://cloud.tencent.com/developer/article/1490112,https://blog.csdn.net/shruber/article/details/78269046

git回退到历史版本的更多相关文章

  1. 在 Git 中 Checkout 历史版本

    昨天写代码的时候,误删了一个文件.今天发现的时候,commit 已经 push 到版本库了.本想用 git reset 回退版本,找回文件后重新提交.但是想起 Git 是一个版本控制系统哎,直接从版本 ...

  2. 『现学现忘』Git基础 — 24、Git中查看历史版本记录

    目录 1.查看详细的历史版本记录 2.简化显示历史版本记录 3.历史版本记录常用操作 (1)指定查看最近几次提交的内容 (2)以简单图形的方式查看分支版本历史 (3)翻页与退出 4.查看分支相关的版本 ...

  3. idea中git回退本地仓库版本

    场景:代码commit到本地仓库,还没有push到远程仓库,这时要回退代码. 介绍下Reset Head中三种Reset Type类型: 1.Mixed(默认):它回退到某个版本,本地会保留源码,回退 ...

  4. idea中git回退远程仓库版本

    工作中遇到,代码已提交并已提交到远程仓库,现需要回退到之前版本,记录如下: 记录当前版本的版本号和需要回退到版本的版本号. current version:85e7f32dfe421c5892a4e2 ...

  5. GIT 获取指定历史版本代码

    cd 到该项目的一个本地仓库下 log 查看提交记录,找到想要的提交记录,粘贴对应的希哈值 执行 git checkout 希哈值 这本地的这个仓库的代码就会变成你想要的那个版本的代码

  6. git 回退到服务器版本操作

    git fetch git reset orgin master --hard git pull

  7. HDU 4348.To the moon SPOJ - TTM To the moon -可持久化线段树(带修改在线区间更新(增减)、区间求和、查询历史版本、回退到历史版本、延时标记不下放(空间优化))

    To the moon Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total ...

  8. Git 强制回退到某个历史版本再推送到远程

    1. 使用 git log 命令历史版本记录回退版本 git reset --hard f6a7c803a6931a9eca011d4e097389e0845cbe49 2. 推送到远程 git pu ...

  9. git操作记录(如何回退到某个历史版本,如何提交部分文件等方法)

    当前项目使用git管理代码,在使用的过程中会遇到一些问题,这里记录下 1.合并代码后 在合并组员的代码后会出现下面的界面,开始的时候都会关闭,重新打开,乐此不疲到忍无可忍 解决方法: 出现这种界面是要 ...

随机推荐

  1. MySQL数据库相关资料

    python 全栈开发,Day60(MySQL的前戏,数据库概述,MySQL安装和基本管理,初识MySQL语句) python 全栈开发,Day61(库的操作,表的操作,数据类型,数据类型(2),完整 ...

  2. 图像欧拉数计算 matlab实现

    EUL = C - H 其中EUL表示欧拉数  C表示对象数 H表示孔洞数 欧拉数常用来识别数字: 识别数字 8 ,8 的欧拉数为 -1 ,不同于0,1,2,3,4,5,6,7,9 close all ...

  3. django 之(四) --- 级联|截流

    登陆注册 登陆注册实现 settings.py # redis配置 CACHES = { "default": { "BACKEND": "djang ...

  4. 深入理解java虚拟机---读书笔记

    第一章 走近java 1. java 技术体系: java 程序设计语言 各种硬件平台上的java虚拟机 class 文件格式 java API 类库 来自商业机构或者开源机构的第三方java类库 j ...

  5. httpurlConnection客户端发送文件与服务端接受文件

    import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.DataInputStream; ...

  6. 【DSP开发】DSP能用VS2010生成的链接库文件吗?

    [DSP开发]DSP能用VS2010生成的链接库文件吗? 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明:可能这个问题让行家看上去就会莞尔一笑,但是很多 ...

  7. 第8课.第一个ARM裸板程序(点亮led)及申引

    1.原理图 2.芯片手册 3.几条汇编代码 1.ldr:读内存 ldr R0, [R1] 假设R1的值是x,读取地址x上的数据(4字节),保存到R0中 ldr R0, =0x12345678 (4字节 ...

  8. 冲刺Noip2017模拟赛7 解题报告——五十岚芒果酱

    1.二叉树(binary) .二叉树 (binary.cpp/c/pas) [问题描述] 二叉排序树或者是一棵空树,或者是具有下列性质的二叉树: ()若左子树不空,则左子树上所有结点的值均小于它的根结 ...

  9. Escape(多记一个方向状态的BFS)迷宫逃脱

    题意:https://www.nitacm.com/problem_show.php?pid=2266 vis记[x][y][dir]三个状态就行. 引用:https://blog.csdn.net/ ...

  10. Go语言学习之数据类型

    ### Go语言学习之数据类型 数据类型的转换 1.Go语言不允许隐式类型转换(显示转换才可以) 2.别名和原有类型也不能进行隐式类型转换 例子: func TestImplicit(t *testi ...