如何删除远端已经推送的Commit记录???(Git版本回退)

简单描述

突然事件:刚刚,就在刚刚,发生误了操作。

操作描述:我把修改的文件保存错分支了,已经commit了。并且还push上去了。对,没错已经Push上去了。

事后分析:现在我就想 把远端分支里的Commit记录删掉。

结果如何:肯定是成功了。所以在此记录一下,以免有同样遭遇的小伙伴惊慌失措。

提前剧透:这里用到的核心Git命令语句是,git push origin <分支名> --force

重点分析:就是这个 --force 参数,强制推送,不管你有没有版本回退的记录。(不用这个参数,就会提示你,还有未Commit的记录,或者是什么,反正就是不让你推送)

核心思想:回退到指定的版本,再推送一下覆盖掉之前的Commit。

操作步骤:

第一步:获取到你想要回退到那个版本号的SHA1值。

第二步,使用SHA1值,进行版本回退。(reset操作)

第三步,提交到远端(--force)

具体描述:(防小白不会操作,毕竟这个问题你都找来了,哈哈)。

第一步:获取到你想要回退到那个版本号的SHA1值。

IDEA可视化操作:

小乌龟可视化操作如下:

右键,show log,选中一条,在下面区域就能看到

命令行操作如下:

git log <本地分支号 or remotes/origin/远端分支号>

第二步,使用SHA1值,进行版本回退。(reset操作)

IDEA可视化操作如下:(git小乌龟,或者是其他工具,请自行查阅如何reset)



输入commit记录对应的SHA1值即可。

Git小乌龟操作如下:



先Show log ,然后选中那条记录,右键,一步到位。

命令行操作如下:

git reset --hard <需要回退到的版本号(只需要输入前几位)>

第三步:PUSH。

命令行操作如下:

git push origin <分支名> --force

由于项目隐私问题,我没有截图。SO。问题肯定是解决了的。~

如何删除远端已经推送的Commit记录???(Git版本回退)的更多相关文章

  1. xcode 版本控制推送代码到远程git仓库的步骤

    一 代码推送到远程git仓库 1.在git中建立一个下项目(假设项目名称为->Mygit) 2.在xocde上新建一个测试项目(假设项目名称为GitTest) 3.打开电脑终端: 1)首先利用终 ...

  2. 【转】iOS消息推送实现过程记录

    客户端代码:链接地址 服务器代码:链接地址  链接地址 这里记录下iOS消息推送实现的全过程 首先,申请秘钥. 之后进入链接地址开发者,当然你得有啊!!!!! 点击这里 如图: 下面实现创建推送证书( ...

  3. GIT(5)----常用命令:新分支,切换,删除,远程推送,标签,日志

    常用命令 1.新分支 创建新分支:git branch <branch_name> 创建分支并切换到新的分支上:git checkout -b <branch_name> 2. ...

  4. git 往远端Dev推送

  5. git推送本地分支到远端 以及删除远端分支的 命令

    git推送本地分支到远端 当前处于master分支,尝试用了git push origin warning: push.default is unset; its implicit value is ...

  6. 版本控制git之三-多人协作 变基 推送 拉取 删除远程分支

      版本控制git之三-多人协作 wangfeng7399已关注0人评论350人阅读2019-02-20 21:33:08   如果你想获得一份已经存在了的 Git 仓库的拷贝,比如说,你想为某个开源 ...

  7. git 查看、创建、切换、删除、重命名和推送分支

    1.查看本地所有分支:前面有 “*” 的是当前所处的分支 $ git branch test-A * test-B 2.查看本地和远程服务器的所有分支: $ git branch -a test-A ...

  8. git的某些默认行为--会推送pull的内容,即使commit的时候不显示

    今天一不小心又在git上犯了个大错误,用gitflow之前进行过pull分支的操作,然后用IDE选择修改的文件提交,可是推送的时候把pull的内容也推送到远程服务器了,提交的时候用git status ...

  9. github使用指南(2015年3月23日更新了本地创建仓库再推送到remote仓库的使用方法)

    我是通过这个来学习的.个人愚笨,琢磨了半天,终于搞通了,醉了醉了,以前一直使用svn,用git确实有点水土不服.本文以如何使用git为主来展开,不涉及太多理论. git是分布式的版本管理.什么叫分布式 ...

随机推荐

  1. BugKu CTF(杂项篇MISC)-贝斯手

    打开是以下内容 先看一下给了哪些提示 1.介绍 没了?不,拉到最底下还有 2.女神剧照 密码我4不会告诉你的,除非你知道我的女神是哪一年出生的(细品) 大致已经明白了,四位数密码,出生年份 文件是以下 ...

  2. python实现掘金定时签到抽奖

    python实现掘金定时签到抽奖 一. 概述 这里记录一下使用 python 实现掘金定时签到抽奖.首先需要登录掘金,进入签到页面,按 F12 打开浏览器的调试面板,选择 Network,选择 XHR ...

  3. 在字节,A/B 实验是这么做的!

    主要为大家介绍了为什么要做 A/B 测试.火山引擎的 A/B 测试系统架构及字节跳动内部 A/B 测试的最佳实践. 为什么要做 A/B 测试 首先我们看一个案例. 字节跳动有一款中视频产品叫西瓜视频, ...

  4. 《剑指offer》面试题55 - I. 二叉树的深度

    问题描述 输入一棵二叉树的根节点,求该树的深度.从根节点到叶节点依次经过的节点(含根.叶节点)形成树的一条路径,最长路径的长度为树的深度. 例如: 给定二叉树 [3,9,20,null,null,15 ...

  5. leeetcode 20. 有效的括号

    20. 有效的括号 问题描述 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合. 左括号必须以正确的 ...

  6. pytest文档8-参数化(parametrize)结合allure.title()生成不同标题报告

    参数化parametrize 先看一个简单的pytest参数化案例演示test_a.py # test_a.py import pytest import allure def login(usern ...

  7. 定义函数返回 ax2 + bx + c = 0 的两个解

    # -*- coding: utf-8 -*- import math def quadratic(a, b, c): s = b*b - 4*a*c if a == 0: x = -c / b re ...

  8. Tomcat访问项目出现HTTP状态404-未找到,类型 状态报告 描述 源服务器未能找到目标资源的表示或者是不愿公开一个已经存在的资源表示。Apache Tomcat/9.0.40

    错误提示如图,无任何消息提示,控制台也没有错误. 解决方法: IDEA,上方菜单栏点击Run–>Edit Configurations-,选择Deployment,将Application co ...

  9. Python数据结构之“栈”与“队列”

    栈(Stacks): ·定义:是一种只能通过访问其一端来实现的数据存储于检索的线性数据结构,具有后进先出(last in first out,LIFO)的特征 ·主要操作: 1. Stack():建立 ...

  10. ApacheCN PythonWeb 译文集 20211110 更新

    Django By Example 中文版 1 创建一个博客应用 2 为博客添加高级功能 3 扩展你的博客应用 4 创建一个社交网站 5 分享内容到你的网站 6 跟踪用户动作 7 构建在线商店 8 管 ...