gitignore 文件中忽略项不起作用的解决方法
新建的文件在git中会有缓存,如果某些文件已经被纳入了版本管理中,就算是在.gitignore中已经声明了忽略路径也是不起作用的,这时候我们就应该先把本地缓存删除,然后再进行git的push,这样就不会出现忽略的文件了。git清除本地缓存命令如下:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
一、忽略文件的常用方法
1、git通常在.gitignore文件进行配置,来忽略本地文件。但是这仅对于重来没有提交过的文件有效。
2、使用git update-index --skip-worktree path设置标识,使git忽略对应的文件。
3、使用git update-index --assume-unchanged path设置标识,使git忽略对应的文件。
二、skip-worktree和assume-nochanged的差别
使用 git update-index --skip-worktree [file] 可以实现修改本地文件不会被提交,但又可以拉取最新更改的需求。适用于一些不经常变动,但是必须本地化设置的文件
另外还有 git update-index --assume-unchanged [file] 该命令只是假设文件没有变动,使用reset时,会将文件修改回去
三、撤消git update-index --skip-worktree
git update-index --no-skip-worktree
# 忽略文件
git update-index --skip-worktree <file>
# 撤消
git update-index --no-skip-worktree <file>