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 正确忽略它,从而彻底屏蔽该文件夹的提交。

相关推荐
我叫黑大帅11 分钟前
前端如何利用 GitHub Actions 自动构建并发布到 GitHub Pages?
前端·面试·github
HelloGitHub2 小时前
这个年轻的开源项目,想让每个人都能拥有自己的专业级 AI 智能体
开源·github·agent
刘发财8 小时前
弃用html2pdf.js,这个html转pdf方案能力是它的几十倍
前端·javascript·github
sunny86516 小时前
Claude Code 跨会话上下文恢复:从 8 次纠正到 0 次的工程实践
人工智能·开源·github
ZengLiangYi21 小时前
Git Tag + Semver + CI/CD:从打标签到自动发布的完整实践
github
徐小夕1 天前
JitWord Office预览引擎:如何用Vue3+Node.js打造丝滑的PDF/Excel/PPT嵌入方案
前端·vue.js·github
程序员鱼皮1 天前
离大谱,我竟然在 VS Code 里做了个视频!
github·aigc·ai编程
答案answer1 天前
一个非常实用的Three.js3D模型爆破💥和切割开源插件
前端·github·three.js