Git 停止追踪已提交文件问题

问题

文件已被 Git 追踪后,即使添加到 .gitignore,修改仍会出现在 git status 中。

原因:.gitignore 只对未追踪的文件生效,已追踪的文件会被忽略规则忽略。

解决方案

1. 从索引中移除追踪(保留本地文件)

git rm -r --cached <目录或文件>

2. 确认 .gitignore 已配置

echo "<目录或文件>" >> .gitignore

3. 提交更改

git commit -m "chore: 停止追踪 xxx"

示例

git rm -r --cached .idea/

git rm --cached config.local.json

git commit -m "chore: 停止追踪 IDE 配置和本地配置文件"

注意

  • --cached:只从索引移除,本地文件保留

  • 不加 --cached:索引和本地文件都删除

  • 历史提交中的记录仍存在,如需彻底清除需用 git filter-repo

相关推荐
和你看星星1 天前
Git rerere:让重复冲突只解决一次
git
大大大大晴天2 天前
Hudi Metadata Table 与 Hive Sync (HMS)怎么选?
大数据
手可摘星辰7772 天前
一次线上FlinkCDC异常排查复盘
大数据·flink
大大大大晴天2 天前
Hudi技术内幕:Metadata Table原理与实践
大数据
武子康3 天前
调查研究-197 FAISS vs Elasticsearch 全面对比:从向量检索、全文搜索到 RAG 选型指南
人工智能·elasticsearch·agent
大大大大晴天3 天前
Hudi技术内幕:深入解析Index索引机制
大数据
阿里云大数据AI技术3 天前
Flink Forward Asia 2026 深圳启幕:Agentic Streaming for AI,开启实时智能新范式
大数据·flink
SelectDB4 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
Elasticsearch4 天前
Elasticsearch ES|QL:现已支持视图、子查询和读取时模式定义
elasticsearch
嘻嘻仙人5 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github