git - 提交时忽略本地文件夹而不对远程文件夹进行任何更改

git - ignoring a folder locally without any changes on remote when committing

通过我的研究,我看到有人询问如何在本地保留文件夹并在远程删除它,反之亦然。但我有一个更微妙的问题。对不起,如果碰巧我搜索不够。

您好,我使用 IntelliJ IDEA 来处理一个为 Eclipse 制作的项目(我非常不喜欢 Eclipse)。然而,出于兼容性原因,遥控器上有一个 .idea 文件夹。问题是,它应该在遥控器上保持原样。因为我使用的是 IntelliJ,所以它一直由我自己更新。

它的某些部分被忽略并且不会出现在提交中(例如 Gradle 导入创建的依赖项 .xml 文件),但是像我的 workspace.xml 这样的文件是在 .gitignore 中忽略,但忽略不 "register",这意味着它们被忽略,但它们包含在提交中。那是因为在我忽略它们的时候它们已经存在了

所以我想做的是使 .idea 文件夹中的所有文件实际上都被忽略(不显示在提交中),但是 而不必从任何一个中实际删除它们索引或文件系统。现在,如果我使用 "usual" 方法,它们包括执行 git rm --cached -r folder。如果我这样做,它会在提交时显示为删除,我只是想这样做,以便忽略所有更改,而不会对提交历史记录进行任何明显更改(例如删除)。

希望我已经足够清楚了,提前感谢您的回答。

您可以创建 .git/info/exclude 并添加 .idea 文件夹。此文件的语法与 .gitignore.

相同

此方法允许您 git 忽略本地文件,而无需将它们添加到远程 .gitignore