git status中显示为 deleted 状态的如何回退,不再为deleted状态

git status 中显示为 deleted: 的文件,表示这些文件已从工作区中删除,但 Git 仍在跟踪它们。以下是几种方式来回退这种状态,使 deleted: 不再显示:


1. 恢复已删除的文件到工作区

如果希望恢复被删除的文件,可以从 Git 历史中将它们恢复出来:

bash 复制代码
git checkout HEAD -- <file_name>

或者恢复所有被删除的文件:

bash 复制代码
git checkout HEAD -- .
结果

这将从当前分支的最后一次提交中恢复被删除的文件到工作目录,git status 中的 deleted: 不再显示。


2. 停止 Git 跟踪这些文件

如果不需要恢复这些文件,但希望删除文件的状态不再显示,可以让 Git 停止跟踪这些文件:

bash 复制代码
git rm --cached <file_name>

或者一次性移除所有被删除的文件:

bash 复制代码
git rm --cached $(git ls-files --deleted)
结果

这会让 Git 停止跟踪这些文件,但不会删除工作目录中的其他文件。随后 git status 中将不再显示 deleted: 状态。


3. 将删除的更改提交到 Git

如果文件确实是被删除的,并且希望将删除操作记录到 Git 中,可以直接提交删除:

bash 复制代码
git add -u
git commit -m "Remove deleted files"
结果

git status 中的 deleted: 文件会变成 nothing to commit, working tree clean


总结:

  • 如果要恢复文件,使用 方法 1
  • 如果要停止 Git 跟踪文件,使用 方法 2
  • 如果确认文件已删除并提交,使用 方法 3

选择适合您需求的方法执行即可!

相关推荐
爱学英语的程序员26 分钟前
让AI 帮我做了个个人博客(附提示词!)
人工智能·git·vue·github·node·个人博客
liu****1 小时前
git工具
git·python·算法·机器学习·计算机基础
wxr06162 小时前
git无法克隆
git
cooldream20094 小时前
Git 拒绝推送(Push Rejected)问题全解析与解决方案实战指南
git
wxr06164 小时前
GIT无法push
git·gitee
装不满的克莱因瓶6 小时前
【踩坑】IDEA提交Git .gitignore忽略文件不起作用
java·git·.gitignore·踩坑
cos16 小时前
Fork 主题如何更新?基于 Ink 构建主题更新 CLI 工具
前端·javascript·git
OpenMiniServer17 小时前
当 AI 成为 Git 里的一个“人”
人工智能·git
Carry34519 小时前
不清楚的 .gitignore
前端·git
番茄灭世神1 天前
Git入门使用学习
git·gitee·软件工程·计算机专业入门