項目中的某個文件或目錄已經被commit,並push到遠程服務器server了。
這時發現要忽略該文件或目錄,在.gitignore文件里面添加規則已經不起作用了。因為.gitignore只對從來沒有commit過的文件起作用。
解決辦法:
1.先把項目備份,以防萬一。
2.從版本庫中rm文件或目錄
rm文件
git rm --cached file_name //從版本庫中rm文件,working dicrectory中仍然保留
rm目錄
git rm -r --cached directory_name //刪除目錄下所有文件包括子目錄
3.在.gitignore中添加要忽略的文件
4.把修改的文件commit並且push到服務端
5.從git上重新拉取這個項目。