git ignore编写汇总
677 字
3 分钟
git ignore编写汇总
[!abstract] 摘要 本文整理了 Git
.gitignore的核心用法,包括:基本语法与常见忽略规则、已跟踪文件导致.gitignore失效的原因与解决方案、批量清理 Git 缓存的完整流程,以及常见误区对照表。适合在项目初始化或清理仓库时快速查阅。
1. .gitignore 忽略文件/文件夹
1.1 基本写法
# 隐藏文件夹(写法与普通文件夹一致).claude/
# 常见 IDE 隐藏文件夹.idea/.vscode/.vs/
# 构建/临时文件夹dist/build/temp/logs/
# 系统文件.DS_StoreThumbs.db注意
文件夹末尾必须加 /,否则可能只匹配文件而不匹配文件夹。
2. 已跟踪文件写 .gitignore 不生效?
2.1 原因
.gitignore 仅对未跟踪(untracked)文件生效。一旦文件被 git add / git commit 过,就变成已跟踪(tracked),.gitignore 不会自动停止追踪。
2.2 检查哪些文件仍在被跟踪
# 查看所有 . 开头的隐藏文件夹git ls-files | grep '^\.'
# 指定关键词过滤git ls-files | grep -E '\.claude|\.vscode|dist|temp'2.3 彻底解决:解除跟踪 + 提交
# 1. 从 Git 索引移除(本地文件保留)git rm -r --cached .claude/git rm -r --cached .vscode/git rm -r --cached dist/# ...按需添加
# 2. 提交忽略规则并推送git add .gitignoregit commit -m "停止跟踪IDE和构建文件夹"git push参数说明
-r— 递归处理文件夹--cached— 仅从 Git 索引移除,本地文件不动
2.4 一键重置:清除所有缓存并重新追踪
核心思路
清除 Git 所有缓存 → 重新按 .gitignore 追踪 → 本地文件完全不动
已经提交过的 .vscode、.idea、.claude 等 IDE 文件夹 + 各种无用文件夹,一次性全部取消追踪,本地文件保留,只清理 Git 记录。
# 1. 清除 Git 全部缓存(最关键)git rm -r --cached .
# 2. 重新添加所有文件(自动跳过 .gitignore 里的内容)git add .
# 3. 提交清理git commit -m "清理:移除所有IDE缓存、无用文件夹,仅保留项目核心代码"
# 4. 推送到远程(清爽版)git push2.5 批量清理所有 . 开头文件夹
# 先预览再执行(谨慎操作)git ls-files | grep '^\.' | xargs git rm -r --cached谨慎操作
以上命令会移除所有 . 开头的文件夹跟踪,执行前请先预览结果。
3. 常见误区
| 场景 | ❌ 错误做法 | ✅ 正确做法 |
|---|---|---|
| 忽略文件夹 | 只写 .claude 不加 / | 文件夹必须写 .claude/ |
| 已跟踪文件 | 只改 .gitignore 不执行 git rm --cached | 必须解除跟踪后才生效 |
| 清理索引 | 删除本地文件夹 | Git 索引里还在,必须用 --cached 移除 |
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!
git ignore编写汇总
https://firefly.cuteleaf.cn/posts/编程学习/git/gitignore详解/