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
相关推荐
麻辣璐璐5 小时前
【新手小白版】Gerrit使用教程
git·gerrit·新手
AlexMercer101211 小时前
Ubuntu从零开始配置Git
c++·git·ubuntu·gitee
胡西风_foxww1 天前
git 添加除了包含特定字符串的文件
git·字符串·文件·add·添加·特定·包含
parade岁月1 天前
Git 凭据管理器原理与多账号管理指南
git
zzzyulin1 天前
git note
git
六件套是我1 天前
【解答疑惑】git执行cherrypick后到另一个分支,然后再合并会出现问题吗?
git
sulikey2 天前
从零配置一个规范的 Python Git 仓库(适用于 Gitee / GitHub)
git·python·pycharm·gitee·github
学渣676562 天前
【面向小白】git rebase全面总结,什么时候用rebase
git
小龙报2 天前
《算法每日一题(1)--- 第31场蓝桥算法挑战赛》
c语言·开发语言·c++·git·算法·学习方法
222you2 天前
idea整合Git
git