原因分析:
因为如果项目一开始没有在.gitignore中配置相应的忽略规则,那么在使用git add
后将会追踪此文件,而后再在.gitignore中修改的话将不会起作用。
.gitignore配置文件中只会忽略从一开始就没有被追踪的文件,举例说来:如果再新建了文件,没有使用git add
进行追踪,那么此时配置.gitignore是可以的。
好吧,关键是如何解决已经追踪或者已经提交了的文件的忽略问题,见如下操作。
$> git rm --cached test.py # 先解除对名为test.py文件的追踪,不加--cached是解除并删除文件(即本地也没有了)
$> vim .gitignore # 修改.gitignore文件
# .gitignore
test.py
$> git commit -m "untrack test.py"
$> git push
此时再查看github,就会发现test.py已被删除(即不再被追踪),但本地中仍保留有。