Git中.gitignore文件修改后不起作用

问题背景

当我使用git上传项目的时候,有些本应该忽略的文件没有被忽略,这时候我修改.gitignore文件再次上传的时候,本该忽略的文件还是在那里

问题原因

这是因为git缓存的原因,如果某些文件已经被纳入版本管理中,就算是在.gitignore文件中声明了忽略文件的路径也是不起作用的,这时候我们就应该先把本地缓存删除,然后再add和push。

问题解决

  1. 首先清除本地缓存
    git rm -r –cached .

  2. 再次add文件
    git add .

  3. 提交
    git commit -m “chore:update .gitignore”

  4. push
    git push

.gitignore书写格式

1
2
3
4
5
6
# 此为注释 – 将被 Git 忽略
*.a # 忽略所有 .a 结尾的文件
!lib.a # 但 lib.a 除外
/TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/ # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
-------------本文结束感谢阅读-------------