git忽略已经被提交的文件,以及如何恢复追踪

问题描述

之前在提交代码时,.gitignore 没有填写完整,导致idea编辑器的配置文件夹.idea被提交了

然后每次运行本地项目,都会在.idea文件夹下生成一堆文件,这时发现问题,将.idea/填写到.gitignore规则中,但是运行git status的时候,依然能看到这些文件

解决办法

正确的做法应该是:git rm --cached .idea -r,然后更新 .gitignore 忽略掉目标文件,最后 git commit -m "We really don't want Git to track this anymore!"

这时问题已经解决

但问题是:为什么我增加了.gitignore里的规则却没有效果?

这时因为.gitignore文件只能作用于 Untracked Files,也就是那些从来没有被 Git 记录过的文件(自添加以后,从未 add 及 commit 过的文件)。

而我的.idea下的文件都已经被git记录过,因此.ignore对他们完全无效,这时将文件夹的追踪从Git数据库中删除,再更新.gitignore,然后提交即可

如何恢复对某个文件/文件夹的追踪呢

将该文件/文件夹的规则从.gitignore中删除即可

posted @   zhangce  阅读(7496)  评论(2编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
点击右上角即可分享
微信分享提示