Git将已经add的文件加入到.ignore文件中

  • 1 IDEA中新增.ignore文件
  • 2 取消对文件的跟踪
  • 3 取消跟踪的命令
  • 4 总结



  

1 IDEA中新增.ignore文件

1、首先安装.ignore插件

git 接入ldap_idea中使用.ignore


2、在项目中新增.ignore文件

git 接入ldap_ignore插件使用_02


3、生成 ignoreFile文件,语言选择 java

git 接入ldap_idea中使用.ignore_03


4、生成的文件,会自动将一些文件进行屏蔽,如果还有需要手动指定的文件或者文件夹需要被忽略,文件右键单击

git 接入ldap_git 接入ldap_04

注意:
如果项目已经add 或者commit,那么项目中的所有 文件就已经被git 跟踪,这时如果再向 .ignore文件中新增要忽略的文件,是不生效的,提交的时候文件列表还是会有该文件。所以使用.ignore文件尽量一次将要忽略的文件排除完

  有时候在项目开发过程中,突然心血来潮想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:

git rm -r --cached .

git add .

git commit -m 'update .gitignore'

2 取消对文件的跟踪

1、使用git 的命令行

git 接入ldap_Git忽略文件不生效_05


2、刷新IDEA工程中的代码

git 接入ldap_ignore插件使用_06


发现所有被git跟踪的文件变成棕色(棕色表明文件没有被跟踪),这时再将要忽略的文件加入到 .ignore文件中。再commit 发现文件已经被git 忽略。再次提交需要注意Unversioned Files也要勾选 注意下方显示3个add 3个delete

git 接入ldap_Git忽略文件不生效_07

3 取消跟踪的命令

如果是对所有文件都取消跟踪的话,就是

git rm -r --cached .   //不删除本地文件
git rm -r --f .   //删除本地文件

对某个文件取消跟踪

git rm --cached readme1.txt    删除readme1.txt的跟踪,并保留在本地。
git rm --f readme1.txt    删除readme1.txt的跟踪,并且删除本地文件。

然后git commit 即可。

.gitignore 还可以指定将哪些文件添加到版本管理中:
在上面的语法前面加上  !   即可
如果还是不行的话、在先将想要取消追踪的文件移到项目目录外),并提交,然后提交后再将刚刚移出的文件再移入项目中即可

4 总结

  不要误解了 .gitignore 文件的用途,该文件只能作用于 Untracked Files,也就是那些从来没有被 Git 记录过的文件(自添加以后,从未 add 及 commit 过的文件)。如果文件曾经被 Git 记录过,那么.gitignore 就对它们完全无效。