我在Rails项目中使用Rubymine。通常情况下,Rubymine在.idea/*文件中做了一些我并不关心的更改。但它一直阻止我查看新的分支,并使我的.idea版本与我的同事不同。

我们已经向.gitignore添加了.idea/,但它会跟踪.idea中的变化。我该怎么做才对呢?

下面是我得到的一个典型的错误消息:

error: Your local changes to the following files would be overwritten by checkout:
    .idea/workspace.xml

当前回答

在你的终端上使用git rm -r——cached .idea非常适合我。它禁用了更改跟踪,并取消了rubymine文件夹(idea/)下的许多文件的设置,然后我可以添加并提交给git,从而消除了比较,并允许.idea/的gitignore设置工作。

其他回答

我试着把这些文件添加到我的。gitignore,它是无用的…

然而,正如Petr Syrov所说,你可以使用git rm -r——cached .idea到你的终端,这些文件将不再是一个问题!

将.idea/*添加到排除列表中,以防止跟踪所有.idea文件、目录和子资源。

在rubymine gui中,有一个忽略列表(设置/版本控制)。也许可以试着在那里禁用它。我从他们的后勤人员那里得到了暗示。

.gitignore,该文件用于显式指定Git应该忽略哪些文件或文件夹

在$HOME/中指定的忽略规则。gitignore_global、$ HOME /。config/git/ignore, $GIT_DIR/info/exclude, .gitignore在git存储库中都有效

.gitignore文件显式指定了哪些文件不应该被Git跟踪,即被Git忽略。在gitignore之前已经被Git跟踪的文件不受gitignore规则的影响。要停止跟踪Git已经跟踪的文件,请使用Git rm——cached .idea/命令

对于所有的JetBrains ide:

设置>编辑器>文件类型>被忽略的文件和文件夹,按+号添加。idea到被忽略列表。

或者,添加到.gitignore(用于提交)或.git/info/exclude(用于本地)行。idea/。