.gitignore只对「还没被 Git 追踪的文件」生效
已经进仓库的文件,必须先从 Git 的索引里移除一次。
正确做法(推荐)
1️⃣ 确认 .gitignore 已写好
比如你要忽略:
config.yaml.gitignore 里有:
config.yaml2️⃣ 从 Git 索引中移除(不删除本地文件)
git rm --cached config.yaml⚠️ 注意是 --cached,否则会把你本地文件删掉。
如果是目录:
git rm -r --cached logs/3️⃣ 提交这次修改
git commit -m "stop tracking config.yaml"4️⃣ 以后这个文件就真正被忽略了 🎉
- 本地还在
- Git 不再跟踪
- 不会再被提交
如果你要一次性处理很多已被追踪的文件
比如你刚补全了 .gitignore,想让它全部生效:
git rm -r --cached .
git add .
git commit -m "apply .gitignore"⚠️ 这一步会让 Git 重新计算所有跟踪文件,适合:
- 刚整理
.gitignore - 或仓库还不算特别大
常见误区 ❌
❌ 我已经加到 .gitignore,为什么还会被提交?
因为它 之前已经被 Git 追踪过
❌ 直接删文件再加 .gitignore?
可以,但容易误删本地重要文件,不推荐
快速自检命令
看看文件是不是还被 Git 跟踪:
git status或者:
git ls-files | grep config.yaml作者:admin 创建时间:2025-12-26 10:16
最后编辑:admin 更新时间:2025-12-26 10:17
最后编辑:admin 更新时间:2025-12-26 10:17