通常我们都会利用.gitignore过滤一些特定的文件,例如:系统产生的文件、编译过程中产生的中间文件以及特定的脚本文件(.idea.DS_storenode_modulesxx.sh)等等,这些文件不需要被追踪管理。

遇到的问题:

.gitignore中添加xx.sh文件,以过滤该文件,但是通过git status查看仍显示xx.sh文件的状态。

产生的原因:

git库中已存在了这个文件,之前push提交过该文件。

注:.gitignore文件只对还没有加入版本管理的文件起作用,如果之前已经用git把这些文件纳入了版本库,就不起作用了

解决的办法:

git库中删除该文件,并更新。再次用git status命令查看状态,xx.sh文件不再显示状态。

注:若该删除的文件为特殊文件,请注意备份。