.gitignore,git add和文件神秘地消失了



我有一个项目,并通过git共享了根文件夹。

我和我的同胞正在使用不同版本的 Gradle(并且为项目命名了不同的东西),因此将 .idea 文件夹(某个文件夹)中的某些内容放在 .gitignore 文件中是合适的。直到现在我才意识到这一点,当我的朋友拉了它,由于使用不同的版本而更改了很多东西,现在又把它推了回去。

我已添加到 .gitignore 文件中:

/.idea/

但是,git 似乎仍在将该文件夹中的更改发送到 Github 存储库。

我已经检查了一些东西,包括这个,这个,以及更多关于堆栈溢出的问题。

我运行git rm --cached .idea/,这成功地阻止了更改被推送。但是,如果我签出另一个分支,然后返回到这个分支,它不包括 .idea 目录中的相应文件。

谢谢

一个困惑的程序员

存储库中已经跟踪的文件将保留,因此即使您将它们添加到.gitignore- 它只会影响未跟踪的文件。要从 git 中删除文件而不从工作目录中删除文件,请使用

git update-index --force-remove yourFileName

这将标记要删除的文件而不删除它。--force-remove似乎只适用于单个文件,因此要删除整个文件夹,请尝试以下操作:

find .idea | xargs git update-index --force-remove

相关内容

最新更新