【Git】版本回退与撤销修改案例

news2024/11/16 11:27:00

目录

一、版本回退

二、撤销修改案例

案例1:仅在工作区进行了修改还未进行add操作

案例2:仅进行了add 操作还未进行commit操作

案例3:进行了add与commit操作无其他操作

三、版本库中删除文件


一、版本回退

在进行版本回退之前我们需要先对之前对本地仓库的几个分区进行复习,首先在本地仓库修改一个文件仅仅只是在工作区修改,此时我们执行git add [FileName]操作将修改推送到了暂存区,暂存区也进行了修改,这个时候再执行git commit -m 'desc'命令会将修改同步到版本库中

版本回退命令

git reset [--soft | --mixed | --hard]   [HEAD]

 如果执行git reset --soft HEAD 仅仅只是将版本库中的版本进行回退

               git reset --mixed HEAD 会将暂存区与版本库进行回退

               git reset --hard HEAD 会将工作区、暂存区、版本库都会回退 

那么我们如果选择回退到那个版本呢?

我们可以使用git log 命令来查看某个版本具体的HEAD也就commit id 

这样我们就可以回退到具体某个版本了 

 

 

二、撤销修改案例

案例1:仅在工作区进行了修改还未进行add操作

这个时候我们可以使用以下命令对工作区的内容进行回退

git checkout [FileName]

该命令会将该文件回退到最近一次commit的时候

案例2:仅进行了add 操作还未进行commit操作

这种情况具体有好几种做法,此处我们可以直接使用版本回退命令将工作区、暂存区、版本库的内容回退到当前版本,因为回退的本质是对版本库进行回退,使用

git reset --hard HEAD #  会将三个区回退到当前版本

案例3:进行了add与commit操作无其他操作

这个时候我们可以使用以下命令将版本回退到上一个版本

git reset --hard HEAD^  # 会将三个区回退到上一个版本

三、版本库中删除文件

当我们要删除版本库中的文件时,我们可以先将工作区的文件进行删除,然后提交删除这一修改操作即可完成删除

 

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

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

相关文章

类加载机制与类加载器

点击下方关注我,然后右上角点击...“设为星标”,就能第一时间收到更新推送啦~~~ Java 源码是如何形成类文件的,类文件又是如何加载到虚拟机的,类加载有哪些机制和原则呢?本文将为大家一一介绍。 1 Java 源码形成类文件…

音乐编曲软件FL Studio21中文免费版新功能及下载

FL Studio21是一款数字音频工作站软件,用于音乐制作和混音。它具有广泛的音频编辑和处理功能,可以帮助你创建出专业的音乐和音频内容。它还支持多个音频和效果轨道,可以帮助你创建更加复杂和高质量的音频内容。FL Studio是一款著名的DAW音频制…

1300*C. A Cookie for You

Example input 6 2 2 1 2 0 100 0 1 12 13 25 1 27 83 14 25 0 0 1 0 1000000000000000000 1000000000000000000 1000000000000000000 1000000000000000000 output Copy Yes No No Yes No Yes 解析: 因为第二种人只能吃少的那种蛋糕,所以优先满足他…

Flutter 开发者工具 Android Studio 开发Flutter应用

Flutter 开发者工具 在 Android Studio 开发Flutter应用 🔥 Android Studio 版本更新 🔥 Android Studio Check for Update Connection failed ​ 解决方案 如果是运行的是32位的android studio需要在andriod studio的启动目录下找到studio.exe.vmoptio…

spring boot 2 配置上传文件大小限制

一、起因:系统页面上传一个文件超过日志提示的文件最大100M的限制,需要更改配置文件 二、经过: 1、在本地代码中找到配置文件,修改相应数值后交给运维更新生产环境配置,但是运维说生产环境没有这行配置,遂…

Java那些“锁”事 - 死锁及排查

死锁是两个或者两个以上的线程在执行过程中,因争夺资源而造成的一种互斥等待现象,若没有外界干涉那么它们将无法推进下去。如果系统资源不足,进程的资源请求都得到满足,死锁出现的可能性就很低,否则就会因为争夺有限的…

kali安装Docker的方法+一次错误体验(第一行错误)

一.kali安装docker #添加docker的gpg密钥,签名用的 curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -#添加docker的apt源 echo deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/ buster sta…

使用Jetpack Compose和Motion Layout创建交互式UI

使用Jetpack Compose和Motion Layout创建交互式UI 通过阅读本博客,您将学会使用Motion Layout实现这种精致的动画效果: 让我们从简单的介绍开始。 介绍 作为Android开发者,您可能会遇到需要布局动画的情况,有时甚至需要变形样…

Linux安装kafka3.5.1

要在Ubuntu上安装Apache Kafka,请按照以下步骤操作: 1、安装Java运行时环境(Ubuntu): 如果已经安装jdk不用执行 sudo apt update sudo apt install default-jre2、下载Kafka: wget https://downloads.apache.org/kafka/3.5.1/…

Docker容器基本操作之启动-停止-重启

一、安装启动RabbitMQ容器 此处以rabbitmq容器为例 前提:需要安装配置好docker(设置镜像源、配置阿里云加速)、开启docker,停止(stop)或者禁用(disable)手动解压缩安装的rabbitmq,以防与docker中安装的rabbitmq冲突。 //查看docker状态 systemctl stat…

android Glide加载gif动图和本地视频,Java

droid Glide加载gif动图和本地视频,Java //从手机存储本地加载视频 String filePath "/storage/emulated/0/Pictures/my_video.mp4"; Glide .with( context ).load( Uri.fromFile( new File( filePath ) ) ).into( imageView );//加载gif Glide .with(…

用群晖NAS搭建个人音乐库

安装教程 勾选启动NTP服务 1. 群晖安装Audio Station 2. filestation会生成一个music文件夹,把下载好的音乐丢进music即可(音乐平台听不到的歌也顺带通过下载解决了)这时候你就可以在audio station直接听歌了不过咱们大部分时候听歌是在手机…

恒运资本:深市半年报预告规定?

依据深圳证券交易所等法律法规和业务规范的要求,应当及时、公平、精确发表成绩预告、成绩快报、中报、年度报告等信息。涉及中长期成绩情况的,还应当发表未来发展计划、运营战略、面对的风险与应战以及处理措施等中长期内容。 半年报成绩预告发表规则&am…

【PGMPY】 1. DAG基础结构

pgmpy 贝叶斯网络的纯python实现, 用途: 结构学习、 参数估计、 近似(基于采样) 精确推理 因果推理 安装 pip install pgmpyconda install -c ankurankan pgmpyconda install -c ankurankan pgmpy文档 https://pgmpy.org/index…

C++多线程编程(包含c++20内容)

C多线程编程(包含c20内容) 文章目录 C多线程编程(包含c20内容)线程通过函数指针创建线程通过函数对象创建线程通过lambda创建线程通过成员函数创建线程线程本地存储取消线程自动join线程从线程获得结果 原子操作库原子操作原子智能指针原子引用使用原子类型等待原子变量 互斥互…

Java【Spring】项目创建、存储和获取 Bean 的基本方式

文章目录 前言一、创建 Spring 项目1, 创建 Maven 项目2, 添加 Spring 依赖3, 创建启动类 二、存储 Bean 的基本方式1, 创建 Bean2, 存储 Bean 三、获取 Bean 的基本方式1, 获取上下文对象2, 获取 Bean3, 使用 Bean 总结 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的…

tinkerCAD案例:18. Glow Circuit Assembly 发光电路组件

tinkerCAD案例:18. Glow Circuit Assembly 发光电路组件 In this tutorial, we’ll walk through how to use the Glow circuit assembly. 在本教程中,我们将演练如何使用 Glow 电路程序集。 Using the Glow circuit assembly, you’ll build a pengui…

使用Jetpack Glance创建Android Widget

使用Jetpack Glance创建Android Widget Jetpack Glance发布,让我们使用Google提供的Jetpack Glance创建一个联系人列表小部件。 https://developer.android.com/jetpack/compose/glance 什么是Glance? Jetpack Glance是一个使用Kotlin API创建小型、轻…

APP流量变现逻辑,流量变现收益如何最大化?

开发者首先通过买量的方式将用户引入APP中;用户在使用APP过程中的行为,诸如与游戏关卡的互动等,则不断地产生流量;最后,流量将成为“商品”,被运输至Facebook Audience Network或Google AdMob等平台进行售卖…

cmd命令查看电脑端口

操作是window系统的 其他系统原理类似 但也是有细微差别的 操作 netstat -na //135只是一个举例 netstat -ano | findstr 135//查看被占用端口对应的PID asklist | findstr 135//查看是哪个进程或者程序占用了端口指令 在Windows上: 使用以下命令查找占用指定…