<p>项目开发中使用Git作为版本管理工具时,有时并非在项目一开始就添加了.gitignore文件来管理Git忽略规则,或是在项目开发过程中添加或移除了忽略规则,这时由于Git在本地维护着一份遵从创建本地项目时的gitignore规则的Git缓存,因此会造成.gitignore文件不起作用的现象。</p><p>解决这个问题的方式就是清除掉本地项目的Git缓存,通过重新创建Git索引的方式来生成遵从新.gitignore文件中规则的本地Git版本,再将该Git版本提交到主干。</p><p>例如,如果先使用NPM创建了项目,然后才创建了如下内容的.gitignore文件,那么在提交时本地Git并不会忽略相应的文件和路径。</p><p># .gitignore</p><p>.DS_Store</p><p>node_modules</p><p>package-lock.json</p><p>此时,可在VSC、IDEA等项目IDE的终端工具,或iTerm、PowerShell等独立的终端应用中通过如下Git命令解决这个问题:</p><p># 0. 进入项目路径</p><p># 1. 清除本地当前的Git缓存</p><p>git rm -r --cached .</p><p># 2. 应用.gitignore等本地配置文件重新建立Git索引</p><p>git add .</p><p># 3. (可选)提交当前Git版本并备注说明</p><p>git commit -m 'update .gitignore'</p><p>需要注意的是,第三步仅在调整过.gitignore文件的设备上进行即可;其它设备可以选择重新clone,或在pull之后执行前两步。</p>