2017-07-02 21:45:49 +0000   |     git problem   |   Viewed times   |    

.gitignore中添加要忽略的文件以后,文件还是继续被跟踪?

设置不跟踪某些文件很简单,就是在项目的根目录下创建.gitignore文件,然后在里面添加需要忽略的文件。

这里需要注意的是,添加到.gitignore列表中的文件,如果这个时候还没有被添加到stage暂存区区,git以后就不会再把这个文件添加到stage区,文件就不会被跟踪了。但注意:

如果添加到.gitignore里之前,文件已经被添加到stage暂存区,还需要手动将此文件从stage暂存区删除。否则系统还将继续跟踪此文件。

stage暂存区删除.idea/目录下的所有文件,但不从work area删除,需要用到rm命令。--cached表示只删stage暂存区,不删work area-r表示递归删除目录下的所有子目录和文件。

git rm -r --cached .idea/

删除以后,然后再执行commit的时候,就不会再追踪了。下图是,删除前, add-file-to-gitignore-2

下面是删除成功的过程, add-file-to-gitignore

如果文件被添加到.gitignore列表中之前,已经被提交到git仓库。就需要用reset命令来撤销提交。

git reset .

记住reset的三个层次,