我有一个使用Gradle构建的相对简单的3模块IntelliJ项目。我是Gradle和IntelliJ的新手,正在努力让我的两台个人机器之间能够理解工具/流程。
项目存储在Git中,但每次我在我的一台机器上打开IntelliJ(在推动另一台机器的更改后),我的模块文件总是会被更改:
modified: .idea/modules/core/core.iml
modified: .idea/modules/service/service.iml
modified: .idea/modules/web/web.iml
更改始终只是我的图书馆条目的重新排序:
- <orderEntry type="library" scope="TEST" name="Gradle: io.netty:netty-resolver:4.1.6.Final" level="project" />
- <orderEntry type="library" scope="TEST" name="Gradle: io.projectreactor:reactor-core:2.0.8.RELEASE" level="project" />
- <orderEntry type="library" scope="TEST" name="Gradle: org.yaml:snakeyaml:1.15" level="project" />
- <orderEntry type="library" scope="TEST" name="Gradle: org.jodd:jodd-core:3.7.1" level="project" />
- <orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-all:1.1" level="project" />
- <orderEntry type="library" scope="TEST" name="Gradle: org.objenesis:objenesis:1.2" level="project" />
- <orderEntry type="library" scope="TEST" name="Gradle: cglib:cglib-nodep:2.2" level="project" />
- <orderEntry type="library" scope="TEST" name="Gradle: org.reactivestreams:reactive-streams:1.0.0" level="project" />
<orderEntry type="library" scope="TEST" name="Gradle: com.fasterxml.jackson.core:jackson-annotations:2.7.0" level="project" />
+ <orderEntry type="library" scope="TEST" name="Gradle: org.reactivestreams:reactive-streams:1.0.0" level="project" />
+ <orderEntry type="library" scope="TEST" name="Gradle: cglib:cglib-nodep:2.2" level="project" />
+ <orderEntry type="library" scope="TEST" name="Gradle: org.objenesis:objenesis:1.2" level="project" />
+ <orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-all:1.1" level="project" />
+ <orderEntry type="library" scope="TEST" name="Gradle: org.jodd:jodd-core:3.7.1" level="project" />
+ <orderEntry type="library" scope="TEST" name="Gradle: org.yaml:snakeyaml:1.15" level="project" />
这些变化很重要:
$ git diff --stat
java/.idea/modules/core/core.iml | 204 ++++++++++----------
java/.idea/modules/service/service.iml | 276 +++++++++++++--------------
java/.idea/modules/web/web.iml | 338 ++++++++++++++++-----------------
每次我从一台机器换到另一台机器时都会发生这种情况。
有没有办法来说服IntelliJ保持这些条目的顺序相同?对于我提交的每一个提交都会非常烦人地将这3个文件包含在内,以及我正在做的其他任何更改。
我显然不能.gitignore
这三个文件,因为它们包含关于我的模块配置的所有其他信息 - 分享它是完全有意义的。
请注意,我在构建文件中没有使用apply plugin 'idea'
,我只是让IDEA完全管理模块。这是我的错吗?
答案 0 :(得分:2)
我显然不能
.gitignore
这三个文件,因为它们包含所有文件 关于我的模块的配置的其他信息 - 有些东西 分享是完全有意义的。
实际上,你可以。打开项目并将其与Gradle同步时,将从Gradle生成这些文件。
请参阅FAQ about sharing project files和以下评论。
相关错误: