Git - 如何删除 push 过一次的文件链路追踪?

(以 target 文件夹为例)如果你已经在 .gitignore 中添加了 target/ 目录,但 target 文件夹仍然出现在 Git 的变更列表中,可能是因为它之前已经被添加到 Git 仓库中。即使你更新了 .gitignore,Git 仍然会跟踪这些文件。要彻底解决这个问题,你可以按照以下步骤操作。

1. 确认 .gitignore 文件中正确添加了 target/

确保你的 .gitignore 文件包含以下行:

bash 复制代码
/target/

这会忽略根目录下的 target 文件夹和所有子文件夹中的内容。

2. 从 Git 缓存中移除已经被跟踪的 target 文件

如果 target 文件夹已经被 Git 跟踪,需要先从 Git 的暂存区中移除这些文件,执行以下命令:

bash 复制代码
git rm -r --cached target/

这条命令不会删除本地的 target 文件夹或其内容,它只会从 Git 的跟踪列表中移除这些文件。

3. 提交更改

在移除 target 文件夹的跟踪之后,提交更改:

bash 复制代码
git add .gitignore
git commit -m "Remove target folder from tracking"

4. 推送到远程仓库

将更改推送到远程仓库:

bash 复制代码
git push

总结

这一步骤通过将 target/ 文件夹从 Git 缓存中移除,并确保 .gitignore 正确忽略它,从而彻底屏蔽该文件夹的提交。

相关推荐
ai小鬼头1 小时前
AIStarter最新版怎么卸载AI项目?一键删除操作指南(附路径设置技巧)
前端·后端·github
高山莫衣5 小时前
git rebase多次触发冲突
大数据·git·elasticsearch
码农藏经阁5 小时前
工作中常用的Git操作命令(一)
git
kobe_OKOK_5 小时前
【团队开发】git 操作流程
git·elasticsearch·团队开发
码农垦荒笔记5 小时前
Git 安装闭坑指南(仅 Windows 环境)
windows·git
不午睡的探索者10 小时前
告别性能瓶颈!Python 量化工程师,进击 C++ 高性能量化交易的“必修课”!
c++·github
光溯星河10 小时前
【实践手记】Git重写已提交代码历史信息
后端·github
独立开阀者_FwtCoder10 小时前
URL地址末尾加不加 "/" 有什么区别
前端·javascript·github
独立开阀者_FwtCoder10 小时前
Vue3 新特性:原来watch 也能“暂停”和“恢复”了!
前端·javascript·github
寻月隐君11 小时前
告别 Vec!掌握 Rust bytes 库,解锁零拷贝的真正威力
后端·rust·github