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
相关推荐
研究是为了理解2 小时前
Git Bash 常用命令
git·elasticsearch·bash
DKPT2 小时前
Git 的基本概念和使用方式
git
Winston Wood5 小时前
一文了解git TAG
git·版本控制
喵喵先森6 小时前
Git 的基本概念和使用方式
git·源代码管理
xianwu5437 小时前
反向代理模块
linux·开发语言·网络·git
binishuaio9 小时前
Java 第11天 (git版本控制器基础用法)
java·开发语言·git
会发光的猪。10 小时前
如何在vscode中安装git详细新手教程
前端·ide·git·vscode
stewie612 小时前
在IDEA中使用Git
java·git
晓理紫20 小时前
使用git lfs向huggingface提交较大的数据或者权重
git
我不是程序猿儿1 天前
【GIT】sourceTree的“当前分支“,“合并分支“与“检出分支的区别
git