Git之误执行git rm -r解决方案(六十七)

news2024/11/15 1:44:25

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者

新书发布:《Android系统多媒体进阶实战》🚀
优质专栏: Audio工程师进阶系列原创干货持续更新中……】🚀
优质专栏: 多媒体系统工程师系列原创干货持续更新中……】🚀
优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门视频实战课 🚀

人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.

更多原创,欢迎关注:Android系统攻城狮

欢迎关注Android系统攻城狮

🍉🍉🍉文章目录🍉🍉🍉

    • 🌻1.前言
    • 🌻2.git rm介绍
    • 🌻3.未提交更改前,撤销解决方案
      • 🐓3.1 方案一
      • 🐓3.2 方案二
    • 🌻4.提交更改后,撤销解决方案
      • 🐓4.1 方案一
      • 🐓4.2 方案二

🌻1.前言

本篇目的:在git操作中,误使用git rm -r后,该如何恢复?

🌻2.git rm介绍

  • Git是一个功能强大的版本控制系统,广泛应用于各类软件开发项目中。在Git的使用过程中,我们经常需要对文件进行管理,包括添加、删除、修改等操作。今天,我们来详细介绍git rm -r命令的作用。
  • git rm -r命令是Git中用于删除文件或目录的命令。其中,rm是“remove”的缩写,表示删除;-r是递归删除的选项,表示不仅删除指定目录下的文件,还会删除该目录下的所有子目录及其中的文件。
    具体来说,git rm -r命令的作用如下:
  1. 删除指定文件或目录:当我们需要从Git仓库中删除某个文件或目录时,可以使用git rm -r命令。例如,要删除名为“example.txt”的文件,可以使用git rm -r example.txt
  2. 删除所有子目录及其文件:当我们需要删除一个包含多个子目录的目录时,-r选项会递归删除该目录下的所有子目录及其中的文件。例如,要删除名为“dir”的目录及其所有子目录和文件,可以使用git rm -r dir
  3. 提交删除操作:使用git rm -r命令删除文件或目录后,需要执行git commit命令提交删除操作,才能真正从Git仓库中删除这些文件。例如,提交删除操作的命令为git commit -m "删除了example.txt文件"
  4. 支持通配符:git rm -r命令支持通配符,可以一次性删除多个符合条件的文件或目录。例如,要删除所有以“.txt”结尾的文件,可以使用git rm -r *.txt
  5. 与分支和远程仓库交互:在使用git rm -r命令删除文件或目录后,如果需要将这些更改同步到其他分支或远程仓库,可以使用git push命令。
    需要注意的是,使用git rm -r命令删除文件或目录时,有以下几点需要注意:
  6. 删除操作不可逆:一旦执行git rm -r命令并提交删除操作,被删除的文件或目录将无法恢复。因此,在执行删除操作前,请务必确认是否真的需要删除这些文件。
  7. 慎用通配符:在使用通配符删除文件时,请确保符合通配符条件的文件都是需要删除的。否则,可能会误删重要文件。
  8. 删除空目录:如果要删除一个空目录,可以不使用-r选项,直接使用git rm命令。

🌻3.未提交更改前,撤销解决方案

🐓3.1 方案一

  • 使用 git reset 命令来撤销所有的更改
# git reset --hard

🐓3.2 方案二

  • 恢复所有删除的文件
# git checkout .

🌻4.提交更改后,撤销解决方案

🐓4.1 方案一

  • 使用 git revert 命令来创建一个新的提交,这个提交会撤销之前的删除操作
# git revert <commit_hash>

🐓4.2 方案二

  • 想要完全撤销提交(不仅仅是撤销删除操作),可以使用 git reset 命令,但这通常涉及到更复杂的变基操作
# git reset --hard <commit_hash>

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

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

相关文章

视频分割操作教程

1、打开剪映 2、点击开始创作上面的“”&#xff0c;选择视频&#xff0c;点击添加按钮&#xff0c;导入一个视频素材到剪映 3、滑动视频&#xff0c;让视频竖线到合适位置 4、点击视频&#xff0c;出现白色边框 5、点击工具栏“分割”&#xff0c;然后点击需要删除的视频部分 …

03 战略的本质与实践 - 战略管理实践的启示

1,战略有一定复杂性。在学术界就有很多学派。明斯伯格,加拿大的管理学家,认为有10大学派。 我看来有三个方面: 理性学派:通过规划、主动管理 演进学派:根据一个不确定性的环境,自发自下而上来形成 过程管理:重要的不是结果,而是过程 简单的看,如下图。 显示公司自己的…

查询分类数据序列中的每个类别 Series.cat.categories

【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 1.定义分类序列s 2.查询s中的各类别 Series.cat.categories 选择题 关于以下代码输出结果的说法中正确的是? import pandas as pd s pd.Series([a,b,a,b], dtypecategory) print("【…

windows系统安装docker

参考&#xff1a;GitHub - tech-shrimp/docker_installer: Docker官方安装包&#xff0c;用来解决因国内网络无法安装使用Docker的问题 1.windows系统安装docker cmd 右键 以管理员身份运行 输入 wsl --set-default-version 2 wsl --update --web-download GitHub - tech-s…

系统架构设计师教程 第5章 5.2 需求工程 笔记

5.2 需求工程 ★★★★★ 软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望。 软件需求包括3个不同的层次&#xff1a;业务需求、用户需求和功能需求(也包括非功能需求)。 (1)业务需求 (business requirement) 反映了组织机构或客户对系统、产品高层次的目标…

Flutter启动无法运行热重载

当出现这种报错时&#xff0c;大概率是flutter的NO_Proxy出问题。 请忽略上面的Android报错因为我做的是windows开发这个也就不管了哈&#xff0c;解决下面也有解决报错的命令大家执行一下就行。 着重说一下Proxy的问题&#xff0c; 我们看到提示NO_PROXY 没有设置。 这个时候我…

掌握ZooKeeper的业务使用场景,ZooKeeper如何实现分布式锁

1. ZooKeeper分布式锁 1.1 排他锁实现分布式锁 面试官&#xff1a;知道Zookeeper有什么应用场景吗? 目前地球村里大型公司部署的分布式技术&#xff0c;绝大部分都是由Zookeeper提供底层的技术支持&#xff0c;所以Zookeeper多么重要就不用我多说了吧。 我们可以利用Zookeep…

多态(下)【C++】

抽象类 抽象类的定义 只要有纯虚函数的类就是抽象类 什么是纯虚函数&#xff1f; 纯虚函数是一种特殊的虚函数&#xff0c;它是没有函数体的虚函数 纯虚函数的语法&#xff1a; class <类名> { public:virtual <类型><函数名>(<参数表>) 0; };…

基于 jenkins 的持续集成、持续部署方案

工具介绍 python3.12 fastapi 0.92.0 uvicorn 开发部署web项目&#xff1b;git gitee 实现代码版本管理&#xff1b;jenkins docker 实现持续集成、持续部署&#xff1b;centos7 作为jenkins服务器 & 部署服务器&#xff1b;有条件的可以再启动一台服务器作为部署测试…

【Elasticsearch系列六】系统命令API

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

‌内网穿透技术‌总结

内网穿透是一种网络技术&#xff0c;通过它可以使外部网络用户访问内部网络中的设备和服务。一般情况下&#xff0c;内网是无法直接访问的&#xff0c;因为它位于一个封闭的局域网中&#xff0c;无法从外部访问。而通过内网穿透&#xff0c;可以将内部网络中的设备和服务暴露在…

2024年TCGA基因表达数据下载(最新版)

文章目录 前言一、如何使用TCGA数据库获取公共数据?二、使用步骤1.点击Cohort Builder2.数据筛选3. Repository4.数据下载4.1 继续选择筛选条件4.2 添加cart并进入4.3 下载 总结 前言 TCGA 全称 The Cancer Genome Atlas &#xff0c;即癌症基因组图谱。它是一个大型的癌症研…

【Python篇】深度探索NumPy(下篇):从科学计算到机器学习的高效实战技巧

文章目录 Python NumPy学习指南前言第六部分&#xff1a;NumPy在科学计算中的应用1. 数值积分使用梯形规则进行数值积分使用Simpson规则进行数值积分 2. 求解微分方程通过Euler方法求解一阶常微分方程使用scipy.integrate.solve_ivp求解常微分方程 3. 随机过程模拟模拟布朗运动…

Linux下进程间的通信--共享内存

共享内存概述&#xff1a; 共享内存是进程间通信的一种方式&#xff0c;它允许两个或多个进程共享一个给定的存储区。共享内存是最快的一种IPC形式&#xff0c;因为它允许进程直接对内存进行读写操作&#xff0c;而不需要数据在进程之间复制。 共享内存是进程间通信&#xff…

【C++】【网络】【Linux系统编程】单例模式,加锁封装TCP/IP协议套接字

目录 引言 获取套接字 绑定套接字 表明允许监听 单例模式设计 完整代码示例 个人主页&#xff1a;东洛的克莱斯韦克-CSDN博客 引言 有关套接字编程的细节和更多的系统调用课参考《UNIX环境高级编程》一书&#xff0c;可以在如下网站搜索电子版&#xff0c;该书在第16章详…

【C++】缺省(默认)参数

&#x1f984;个人主页:小米里的大麦-CSDN博客 &#x1f38f;所属专栏:C_小米里的大麦的博客-CSDN博客 &#x1f381;代码托管:C: 探索C编程精髓&#xff0c;打造高效代码仓库 (gitee.com) ⚙️操作环境:Visual Studio 2022 目录 一、概念 二、 全缺省&#xff08;Fully Defa…

多态的相关知识

一.多态的概念 1.多态&#xff1a;多态是⼀个继承关系的下的类对象&#xff0c;去调⽤同⼀函数&#xff0c;产⽣了不同的⾏为。 2.多态分为编译时多态(静态多态)和运⾏时多态(动态多态)。 1>编译时多态(静态多态)主要就是函数重载和函数模板&#xff0c;他们传不同类型的…

Powerpaint介绍及实现局部重绘效果测试[comfyui]

&#x1f358;背景 powerpaint&#xff0c;是一个高质量多功能的图像修补模型&#xff0c;可以同时支持插入物体、移除物体、图像扩展、形状可控的物体生成。 这个模型也是国产的&#xff0c;原作者是清华大学深圳国际研究生院&#xff0c;清华大学 &#xff0c;上海人工智能…

JAVA:非对称加密技术的详细指南

请关注微信公众号&#xff1a;拾荒的小海螺 博客地址&#xff1a;http://lsk-ww.cn/ 1、简述 非对称加密是一种加密技术&#xff0c;使用一对密钥进行数据加密和解密。这两个密钥分别是公开密钥&#xff08;public key&#xff09;和私有密钥&#xff08;private key&#xf…

【算法】栈与模拟

【ps】本篇有 5 道 leetcode OJ。 目录 一、算法简介 二、相关例题 1&#xff09;删除字符串中的所有相邻重复项 .1- 题目解析 .2- 代码编写 2&#xff09;比较含退格的字符串 .1- 题目解析 .2- 代码编写 3&#xff09;基本计算器 II .1- 题目解析 .2- 代码编写 4&…