Git .gitignore 忽略文件不生效解决方法

.gitignore 匹配规则

bash 复制代码
*.sample       # 忽略所有 .sample 结尾的文件
!lib.sample    # 但 lib.sample 除外
/TODO          # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/         # 忽略 build/ 目录下的所有文件
doc/*.txt      # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
  • 把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是 .gitignore 只能忽略那些原来没有被追踪的文件,如果某些文件已经被纳入了版本管理中,则修改 .gitignore 是无效的。

  • 解决方法就是先把本地缓存删除(改变成未被追踪状态),然后再提交:

bash 复制代码
$ git rm -r --cached .
$ git add .
$ git commit -m 'update .gitignore'
$ git push
相关推荐
AI 编程助手GPT1 小时前
ChatGPT 新手入门与实战操作指南
开发语言·人工智能·git·python·chatgpt
MU在掘金916951 小时前
给AI Agent做一个代码大脑:我用Tree-sitter+ChromaDB+MCP搭了个代码知识库
git·python
甄心爱学习2 小时前
【项目实训】法律文书智能摘要系统7
git·python
cheems95272 小时前
Git 分支管理
大数据·git
不总是2 小时前
Windows 系统 Git 下载与安装详细教程
git
独隅3 小时前
Git Submodule深度避坑指南
大数据·git·elasticsearch
jiayong233 小时前
CI/CD与DevOps、Jenkins、K8s关系深度解析
运维·git·ci/cd
云水一下3 小时前
连接世界——远程仓库与 GitHub 协作实战
git·github
超梦dasgg17 小时前
工作中 Git 完整使用指南(职场实战版)
git
Ws_17 小时前
Git + Gerrit 第七课:stash 临时保存工作区修改
git