在一个项目里面,多少会有一些文件是不需要上传到git上面的,比如node的依赖模块node_modules,这个文件夹超过10000个文件,大小也超过80M。所以,一个.gitignore文件省不了,但是有些时候,明明在项目中配置了.gitignore文件。但是没有起效。原因可能是下面这个
.gitignore规则不生效的解决办法
如果把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被追踪的文件,如果某些文件已经被纳入了版本管理中(通俗一点的说法就是,改项目已经提交了一次,但那次提交并没有加入.gitignore文件,或者就是提交至少一次之后,再添加.gitignore文件),则.gitignore是无效的,不会起作用的。解决方法就是先把本地缓存删除,然后再提交:
$ git rm -r --cached . $ git add .
PS:(
git中如果想忽略掉某个文件,不把这个文件提交到git上,可以使用修改根目录中 .gitignore 文件的方法(如果没有这个文件,则需自己动手创建该文件)。这个文件每行保存了一个匹配的规则,如:
.idea //忽略.idea文件夹和下面的文件
node_modules //忽略node_modules安装依赖文件
*.log //忽略错误文件
dist //忽略项目打包输出文件
webpack.config.babel.js //忽略webpack配置文件
)