git revert 撤回之前的几个指定的提交

news2024/11/18 9:35:05

文章目录

    • Intro
    • 操作命令
      • -n 选项
    • 参考

Intro

在开发过程中,有的时候一开始只是一个小需求,可以改着改着事情超出了控制,比如说我一开始只是想调整一个依赖包的版本,可是改到后来类库不兼容甚至导致项目无法启动
这个时候我就想,如果这个代码库能回到当初该多好啊,就回退到我最近的提交之前。

操作命令

NOTE: 操作之前,请确保本地工作空间是干净的,没有新的改动(可通过git status 查看)。

# 查看commit列表,主要是要查看 revert 命令中要用到的 commit_id
git log --oneline

# 指定:从 COMMIT_ID_1(包含) 到 COMMIT_ID_2(包含)的所有commit的改动内容,全都回退。(那些提交点/历史,【依旧保留】)
git revert -n COMMIT_ID_1^..COMMIT_ID_2

# 查看有哪些文件有变动
git status

# 提交当前的改动
git commit -m "commit msg"

# 推送到服务器
git push

注意 git revert -n COMMIT_ID_1^..COMMIT_ID_2 中的两个提交点可以较短(即commitId前几位即可),
尖括号^后面是两个点。

-n 选项

如果想回退三个提交点:commitA, commitB, commitC,则:
git revert commitA^..commitB 的结果: commitA, commitB, commitC, commitC_revert, commitB_revert, commitC_revert.
git revert -n commitA^..commitB 的结果: commitA, commitB, commitC. 需要紧跟着git commit -m "提交信息"之后才会有新的提交点。

参考

git 还提供其他的方式来回退到之前的状态,见:Git后悔药 — 32、revert撤销(一)
在这里插入图片描述

但是每种方式各有特点。

你把代码内容回退到之前,那之前的那几个提交点还要不要保留(要不要留痕)?
要的话就得用git revert,而不是 git reset

你有没有权限删除之前的某几个提交点(有些公司会对代码库的不同分支的权限作比较严格的限制)?
如果没有权限,就得用 git revert

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1499108.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

华为OD机试 - 服务器广播 - 矩阵(Java 2024 C卷 200分)

目录 专栏导读一、题目描述二、输入描述三、输出描述1、输入2、输出3、说明 四、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2024C卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷…

从数据到智能:探讨大数据在AI领域的核心作用

前言 大数据和人工智能已经成为当今社会的两大热门话题。它们之间究竟有何关系?又如何在各个领域发挥着重要作用? 概念区别与联系 一、大数据与人工智能的基本概念 大数据,顾名思义,指的是海量的、类型繁多的数据集合。这些数据…

万界星空科技MES系统中的车间管理的作用

在了解mes生产管理系统的作用包括哪些方面之前,我们先来了解一下作为生产管理信息化的关键部分,车间管理系统包含哪几个部分:一、mes系统中的车间管理通常包含以下部分: 1、设备管理:用于监控车间内的设备状态&#xf…

【日常聊聊】2024 年 AI 辅助研发趋势

🍎个人博客:个人主页 🏆个人专栏:日常聊聊 ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 方向一:AI辅助研发的技术进展 方向二:行业应用案例 方向三: 面临的挑战与机遇 方向四&a…

学习人工智能:吴恩达《AI for everyone》2019 第3周:实现智能音箱和自动驾驶的几个步骤;无监督学习;增强学习

吴恩达 Andrew Ng, 斯坦福大学前教授,Google Brain项目发起人、领导者。 Coursera 的联合创始人和联合主席,在 Coursera 上有十万用户的《机器学习》课程;斯坦福大学计算机科学前教授。百度前副总裁、前首席科学家;谷…

【深度优先】【图论】【C++算法】2045. 到达目的地的第二短时间

作者推荐 视频算法专题 LeetCode2045. 到达目的地的第二短时间 城市用一个 双向连通 图表示,图中有 n 个节点,从 1 到 n 编号(包含 1 和 n)。图中的边用一个二维整数数组 edges 表示,其中每个 edges[i] [ui, vi] 表…

开源分子对接程序rDock使用方法(1)-Docking in 3 steps

欢迎浏览我的CSND博客! Blockbuater_drug …点击进入 文章目录 前言一、Docking in 3 steps 标准对接rDock 的基本对接步骤及注意事项 二、 三步对接案例Step 1. 结构文件准备Step 2. 产生对接位点Step 3. 运行分子对接3.1 检查输入文件3.2 测试-只进行打分3.3 运行…

Linux/Validation

Enumeration nmap 第一次扫描发现系统对外开放了22,80,4566和8080端口,端口详细信息如下 系统对外开放了4个端口,从nmap的结果来看,8080无法访问,手动尝试后4566也无法访问,只能从80端口开始 …

用MATLAB求解微分方程

第一篇为 基础概念 ,第二篇为 R-K法的具体实现方法。 (一)常微分方程的MATLAB求解 概要: 常微分方程的MATLAB求解分为解析解、数值解解析解(只有少数微分方程组有解析解):dsolve函数数值解:solver函数&a…

Python实例☞数据类型及运算符案例

实例一: ❶要求☞从键盘获取一个4位整数,并分别输出个、十、百、千位 ❷程序代码☞ ①第一种方法 print(请输入一个4位整数:) xeval(input()) print(个位数为:,x%10) print(十位数为:,(x//10)%10) print(百位数为&am…

Transformer中的FeedForward

Transformer中的FeedForward flyfish class PoswiseFeedForwardNet(nn.Module):def __init__(self, d_ff2048):super(PoswiseFeedForwardNet, self).__init__()# 定义一维卷积层 1,用于将输入映射到更高维度self.conv1 nn.Conv1d(in_channelsd_embedding, out_ch…

自律篇001-养成自律的秘密武器1-目标规划表

🚀以前在某书上看到一些博主非常自律,比如每天5点多起床看书,或者每天坚持健身,直到练出马甲线,还有一边工作一边考研等等,自己也曾尝试过做一些目标规划,但结果都不尽人意。写计划的时候往往信…

EVE-NG桥接虚拟网卡实现与虚拟机通讯

一、知识补充 1、VMware网络连接 在VM中,给我们提供了以下几种连接网络的模式 桥接模式:直接联机物理网络NAT模式:用于共享主机的IP地址仅主机模式:与主机共享的专用网络自定义:特定虚拟网络LAN区段 特别注意的是&am…

c++ 11 新特性 元组

一.元组介绍 C11引入了元组(tuple)这一新特性,它是一种可以存储不同类型元素的复合类型。元组类似于结构体,但更加灵活,因为它可以在运行时动态地创建和访问元素。 二.元组使用场景 C11中引入的元组(tuple&…

css clip-path polygon属性实现直角梯形

2024.3.8今天我学习了如何用css实现直角梯形的效果, 效果: 具体实现原理: 一、需要三个div: 外面一个大的div,里面左右两个小的div 我们需要先把第一个div变成直角梯形: 大概是这样,设置好之…

ORA/GSA -- 学习记录

brief over-representation analysis(ORA),过表“达”分析,就是我们做多分组的RNAseq数据解析后会得到一些差异表达的gene,有些时候是单独拿出一个差异gene去解释表型,缺点是欠缺证据力度。有些人就把一些相关的差异gene放在一块儿解释&…

Extend继承

继承的作用 当我们定义了一个Person类: class Person{private Stirng name;private int age;public String getName(){....}public int getAge(){...}public void setName(String name){...}public void setAge(int age){...} }现在,假设还需要定义一个…

最小二乘法(带你 原理 实践)

文章目录 引言一、最小二乘法的基本原理二、最小二乘法的计算过程建立模型确定目标函数求解模型参数模型检验 三、最小二乘法的优缺点优点原理简单易懂统计特性优良适用范围广泛 缺点对异常值敏感假设条件较多 四、最小二乘法在实际应用中的案例五、如何克服最小二乘法的局限性…

OPCUA 学习笔记:程序模型

无论是边缘控制器,还是PLC 中,除了信息模型之外,还有应用程序,这些程序可能是IEC61131-3 编写的程序,也可能是其它程序开发的可执行程序。 尽管OPCUA 描述模型能力很强,但是它缺乏算法的描述方式。但是OPCU…

在k8s上部署dolphinscheduler

(作者:陈玓玏) 一、 前提条件 已部署k8s,版本信息如下: k8s为单机部署;已部署nfs,版本如下; 二、 部署helm 以下步骤安装的是二进制版本,如果通过脚本安装&#…