填加.gitignore文件提交后,忽略做版本控制的文件又重新加入了版本控制。

  远程仓库上有一些配置文件之前被上传了上去,想去掉对他们的版本控制,每次commit或者push的时候不要加入这些配置文件。于是先把这些文件设置为untrack,然后建立.gitignore文件,将要忽略的文件名字加入该文件中,eclipse中文件的图标已经有发生变化,commit的时候是提示各种delete:文件名。
  但是不管是commit或者commit/push后,刚才那些ignore了的文件又全部重新加入了版本控制(通过eclipse里文件的图标看出来,修改了一下文件内容commit也能看到)。想问下这是什么情况,为什么commit后原先去掉版本控制的文件又重新加入了版本控制?

阅读 8.5k
3 个回答

假设你有
a.txt, b.txt, c.txt三个文件,而且都已经提交过了。

现在你希望ignore b.txt

那应该把b.txt加入到.gitignore文件中,echo "b.txt" >> .gitignore

然后本次commit/push时,你会看到

.gitignore
b.txt

如果b.txt本次也有改动的话,你会看到它的。没关系

你就只管commit/push,下次才会忽略所有b.txt的变更。

不知道这样说,是否你需要的

问题已经解决了。操作方法是(在eclipse中):先右键将要去除版本控制的文件进行ignore,在.gitignore中会新增该文件的记录,然后删除该文件,再commit,push,这样远程分支上就会删除掉该文件了,下次你在本地重新生成了该文件的话,由于添加到了.gitignore里,所以新生成的文件也不会再加入版本控制了~
(ps:之前按照这个思路操作过一直没成功,结果第二天请教了别人也是说这么操作,然后回家再操作就成功了=.=)

推荐问题
宣传栏