git撤销未git commit的文件

目录

一、问题描述

二、方式1:git命令撤销(更专业)

1、文件已git add,未git commit

2、本地修改,未git add

(1)撤销处于unstage的文件,即删除已有变动

(2)如何撤销 Untracked files 新创建的文件和目录

3、操作示范

三、方式2:git gui撤销(更简单)

1、打开 git gui

2、在git gui界面操作


一、问题描述

在git中,有些内容想撤销回来,不更改,我该如何操作呢?

下面提供两种方式处理。

二、方式1:git命令撤销(更专业)

1、文件已git add,未git commit

此时,所有文件都处于stage状态。

想stage文件变为 unstage 和 Untracked files 文件,

可以使用下面的命令撤销一个或多个文件:

git restore --staged <file>...

【说明】

1,多个时,中间用空格隔开

git restore --staged {modifiedFile} {newFile} {deletedFile}

2,文件可以是修改的(modified),新建的(new file),已被删除的(deleted)。

3,文件:执行 git status 时展示的文件路径。

2、本地修改,未git add

(1)撤销处于unstage的文件,即删除已有变动

使用下面的命令撤销一个或多个文件:

git restore <file>...

【说明】

1,可以是多个,中间用空格隔开

git restore {modifiedFile} {deletedFile}

2,文件可以是修改的(modified),已被删除的(deleted)。

3,新建的(new file)文件不能操作,如果操作返回下面的异常:

(2)如何撤销 Untracked files 新创建的文件和目录

注:Untracked files(未监控) 是我新增的文件,还没有被跟踪的文件。

解决方案

1,查看要删除的文件和目录,避免误删

git clean -ndf

2,在项目中查找和删除

在项目代码中,

根据上面查看的文件路径,找到文件,

然后执行删除操作。

方案中的第二步为什么不用命令说明

1,删除文件

git clean -xf

如下图,删除了我不想删除的 .iml 文件。

2,删除文件和目录

git clean -xdf

如下图,也是删除了我不想删除的文件和目录。

所以,以上两个命令是个坑,根据自身情况进行操作。

如果操作了也有补救,看我这篇内容:

idea中误删.iml和.idea文件,如何处理-CSDN博客

3、操作示范

 注:st 是 status

总共有5个操作:

第一个,查看是git add的内容,是绿色,表示是stage文件。

第二三个,通过 git restore --staged 处理,再次查看,是红色,表示是unstage文件。

第四五个,再执行 git restore ,查看发现已经没有变动的文件了,表示已经删除了已有的变动。

三、方式2:git gui撤销(更简单)

1、打开 git gui

在git bash中,

切换到git项目目录下,

执行git gui命令,

触发打开git gui页面。

2、在git gui界面操作

如图,可以git add,git commit,git push,还能撤销 unstage,revert 等。

界面操作,简单方便。


我是程序员娟娟,

致力将工作中遇到的问题和解决方案记录下来,

分享给更多需要的同行。

如果对你有帮助,不妨点个关注吧!

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

故障发现、定位提效超 70%,去哪儿可观测体系做了哪些优化?

一分钟精华速览 去哪儿网的原有监控系统在指标数量上展现出了强大实力——上亿指标量和百万级的告警量&#xff0c;但在故障数据方面却稍显不足——订单类故障平均发现时间长达 4 分钟&#xff0c;仅有 20%的订单类故障能在 1 分钟内被发现&#xff0c;近半数的故障处理时长超…

华夏ERP打包手册

Maven安装及环境配置 1.下载 浏览器搜索maven点击apache Maven 2.选择安装目录&#xff0c;注意不能有中文 3.环境变量配置 点击计算机右键属性>高级系统设置>环境变量 新建系统变量 MAVEN_HOME 变量值是安装目录 进入path点击新建点击编辑&#xff0c;写入% MAVEN_H…

YashanDB服务端个人版安装部署

介绍 崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统&#xff0c;融入原创理论&#xff0c;支持单机/主备、共享集群、分布式等多种部署方式&#xff0c;覆盖OLTP/HTAP/OLAP交易和分析混合负载场景&#xff0c;为客户提供一站式的企业级融合数据…

Linux中的进程等待(超详细)

Linux中的进程等待 1. 进程等待必要性2. 进程等待的方法2.1 wait方法2.2 waitpid方法 3. 获取子进程status4. 具体代码实现 1. 进程等待必要性 我们知道&#xff0c;子进程退出&#xff0c;父进程如果不管不顾&#xff0c;就可能造成‘僵尸进程’的问题&#xff0c;进而造成内…

vue3 ts vite 主题色功能

开发工具&#xff1a;vue3 ts vite 如上图&#xff0c;选择个颜色整个变化&#xff0c;如下图 默认主题为绿色 切换成其它色。 这里面的颜色块&#xff0c;你也可以给个取器色组件&#xff0c;可切换成任意色。切换时主要执行下方的方法&#xff0c;有兴趣可自己研究下。 /…

torch - 张量Tensor简介与创建

张量是什么&#xff1f; 张量就是多维数组&#xff0c;0维张量叫标量&#xff0c;1维张量是向量&#xff0c;2维张量是矩阵&#xff0c;灰度图片大多都使用2维张量所表示的&#xff0c;3维张量一般用于RGB图片的表示。 张量的属性 其中后四个是用于Tensor自动求导。前四个和T…

C语言--写一个函数返回bool值,来判断给定的字符串A和B(假设都是小写字母),是否是B中的字符都存在于A中,如果是返回true,否则返回false

一.题目描述 写一个函数返回bool值&#xff0c;来判断给定的字符串A和B&#xff08;假设都是小写字母&#xff09;&#xff0c;是否是B中的字符都存在于A中&#xff0c;如果是返回true&#xff0c;否则返回false。例如&#xff1a; 字符串A&#xff1a;abcde 字符串B&#xff…

C++ string类(一)

1.C语言中的字符串 C语言中&#xff0c;字符串是以\0结尾的一些字符的集合&#xff0c;为了操作方便&#xff0c;C标准库中提供了一些str系列的库函数&#xff0c;但是这些库函数与字符串是分离开的&#xff0c;不太符 OOP(Object Oriented Programming)的思想&#xff0c;而且…

现货黄金休市时间长不长?科普一下交易时间

先告诉你答案&#xff0c;现货黄金市场每天的交易时间很长&#xff0c;因为它全天的盘面是由亚洲、欧洲和北美时间无缝地连接而成&#xff0c;无论投资者身处何方&#xff0c;通过哪里的平台入市&#xff0c;每天基本上都可以享受到连续20多个小时的行情。 只要投资者有足够的精…

Gooxi国鑫金秋发布会圆满召开,引领数智新未来

10月24日&#xff0c;主题为“芯加速创鑫局”的2023 Gooxi第四代英特尔至强可扩展处理器平台新品发布会隆重召开&#xff0c;Gooxi重磅发布基于第四代英特尔至强可扩展处理器平台系列新品&#xff0c;Gooxi英特尔平台算力迎来全新升级进化&#xff0c;为AI注入全新发展动力&…

Qt HTTP 摘要认证(海康球机摄像机ISAPI开发)

接到一个需求是开发下海康的球机,控制云台,给到我的是一个开发手册,当然了是海康的私有协议 ISAPI开发手册https://download.csdn.net/download/qq_37059136/88547425关于开发这块读文档就可以理解了,海康使用的是摘要认证,当然了海康已经给出使用范例 通过libcurl就可以直接连…

Mars3d-vue最简项目模板集成使用Mars3d的UI控件样板

备注说明&#xff1a; 1.小白可看步骤一二&#xff0c;进阶小白可直接看步骤三 步骤一&#xff1a;新建文件夹<uitest>&#xff0c;在mars3d仓库拉一份最简项目模板&#xff1a; git clone mars3d-vue-template: Vue3.x 技术栈下的Mars3D项目模板 步骤二&#xff1a;运…