如何删除已经被 git add 命令处理的文件、git 如何删除已经被放入暂存区的文件

博客介绍了 Git 使用中,git add 将文件添加到暂存区,git commit 把暂存区内容提交到当前分支。当误将文件 add 到暂存区时,可选择只从暂存区删除文件或同时删除物理文件,并通过创建 test.js 文件进行了测试演示。

在这里插入图片描述

git 使用第一步是用 git add 把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用 git commit 提交更改,实际上就是把暂存区的所有内容提交到当前分支;

当我们用 git add 把某些文件提交到暂存区之后,突然发现一个文件原本不需要这次被 add 进去,这要怎么做呢?
在这里插入图片描述

git rm --cache xxx.js

只把文件从暂存区删除,不会修改文件的内容,也不会删除文件 recommended

git rm -f xxx.js

直接把文件从暂存区删除,同时删除物理文件,回收站也找不到。

测试
先创建文件 test.js,文件在 untracked files 中
在这里插入图片描述
git add test.js 添加到暂存区,在 changes to be committed
在这里插入图片描述
从暂存区删除,git rm --cache test.js,又恢复成原来状态了
在这里插入图片描述
再添加进去,然后 -f 删除,列举文件的时候已经看不到 test.js 了

在这里插入图片描述


关注公众号 云影sky ,送技术资料
在这里插入图片描述

### Git 暂存区的概念 暂存区(Index 或 Staging Area)是 Git 中一个重要但容易被忽视的部分。当执行 `git commit` 时,Git 实际上是从暂存区获取数据并将其作为新的提交记录保存下来[^2]。 在实际操作中,每次修改工作区内的文件后,这些更改并不会立即进入版本库,而是先放置于暂存区内等待确认。只有经过显式的 `git add` 命令将特定文件或变更加入到暂存区之后,才能通过后续的 `git commit` 提交至本地仓库。 ### 如何使用暂存区 #### 添加文件暂存区 要向暂存区添加文件,可以使用如下命令: ```bash git add <file> ``` 这会把指定文件从工作区复制一份副本放入暂存区,并标记为待提交状态。如果想要一次性添加所有已跟踪以及未跟踪的新文件,则可以直接运行: ```bash git add . ``` #### 查看暂存区的状态 为了查看哪些文件已经被添加到了暂存区,可利用以下指令获得详细的差异对比信息: ```bash git status ``` 此命令不仅能够展示处于不同阶段(即已暂存/未暂存)下的改动情况,还会提示如何继续处理这些变化。 #### 移除暂存区中的文件 如果不小心将某些不需要提交的内容加入了暂存区,可以通过下面的方式撤销这一行为而不影响原始文件: ```bash git restore --staged <file> ``` 上述命令将会移除给定路径对应的条目,使其恢复到仅存在于工作区而不在暂存区里的状况。 #### 完成提交过程 一旦准备好了一组完整的更新项,就可以准备正式提交了。此时只需简单调用: ```bash git commit -m "描述性的消息" ``` 这样就会把当前暂存区里所有的变动打包成一个新的提交对象存储进项目的历史记录之中。 ### 图解说明 根据参考资料,Git 的整体架构由多个部分组成,其中包括工作区、暂存区和本地仓库等组件。对于开发者而言,理解这三个核心概念之间的关系至关重要,因为这是掌握 Git 流程的基础[^4]。 ![Git 结构](https://example.com/git_structure.png)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值