我们的团队刚刚从Netbeans迁移到IntelliJ 9 Ultimate,需要知道哪些文件/文件夹通常应排除在源代码管理之外,因为它们不是“工作站可移植的”,即:它们引用的路径只存在于一个用户的计算机上。
据我所知,IntelliJ希望忽略.idea项目的大部分内容,包括
.idea/artifacts/*
.idea/inspectionProfiles/*
.idea/copyright/*
.idea/dataSources.ids
.idea/dataSources.xml
.idea/workspace.xml
但是,它似乎想签入每个模块根目录中的.iml
文件。
我最初是通过命令行检查整个.idea
目录的,很明显,我没有意识到IDEA“应该”忽略什么。整个.idea
目录通常会被忽略吗?
7条答案
按热度按时间camsedfj1#
我们有一个FAQ article来回答这个问题。
[The默认情况下,所有最新的IDE版本都使用.idea]格式。以下是您需要分享的内容:
请小心共享以下内容:
您可以考虑不分享以下内容:
*gradle.xml文件,see this discussion
*.idea/libraries下的XML文件(如果它们从Gradle或Maven项目生成)
.idea
目录是旧的.ipr(Idea Project)文件的替代文件,如果您想在用户之间共享项目,那么您需要共享.idea文件夹(常见问题中提到的例外情况)和所有.iml文件。nhhxz33t2#
请参考GitHub的JetBrains.gitignore文件,以始终更新要忽略的文件列表。
wf82jlnq3#
虽然不是这个问题的确切答案,但是有一些示例.gitignore文件here,包括一个用于JetBrains的文件,其中包含IntelliJ。
nafvub8i4#
你可能会发现这篇文章很有趣:Merges on IntelliJ IDEA .IPR and .IWS files
它似乎得出结论,您应该添加除以下文件之外的所有文件:
workspace.xml
、dataSources.xml
、sqlDataSources.xml
和dynamic.xml
。答案是集中在文件不会因为打开编辑器或进行特定于ide的更改而发生更改。wqlqzqxt5#
我用的是PHPStorm。
下面是
.gitignore
的示例代码段.idea
目录中的所有其他文件都应该提交到您的资源库中。例如:(提交
.idea
目录中的所有其他内容)文件:How to manage projects under Version Control Systems
以下是您需要分享的内容:
项目根中.idea目录下的所有文件,但存储用户特定设置的workspace.xml和tasks.xml文件除外
可以位于不同模块目录中的所有.iml模块文件(适用于IntelliJ IDEA)
因此,基本上,提交除
workspace.xml
和tasks.xml
之外的所有内容。aamkag616#
是的,我相信是这样的。你可以检查SVN的配置,看看哪些被忽略了,并添加任何你认为应该被忽略的东西。
cmssoen27#
IntelliJ现在会在
.idea
文件夹中创建自己的.gitignore
文件,这样您就可以安全地将其添加到存储库中。