我现在已切换到Android Studio并使用Source Tree将项目保存在Git中。每当我从模块中添加或删除任何库时,其.iml文件也会更改。如果我提交* .iml是非常重要的,因为它们会在其他Android Studio中自动生成。但是,here 它表示你应该存储* .iml。我的问题是,我们真的需要与他人分享我们的* .iml吗?如果是,为什么?
答案 0 :(得分:34)
一般最佳做法是:
所以答案是:为VCS忽略这些文件会更好。
答案 1 :(得分:6)
是的,.iml文件适用于版本控制(请参阅this comment)
使项目尽可能与IDE无关,但是,共享.iml文件对于使用其他IDE开发的人来说不会破坏任何内容。对于他们来说,他们只是一堆相对较小的文件,并不关心他们。
同时使用不同IDE的团队的一个好习惯是将每个IDE的项目文件存储在VCS中,仅排除那些包含特定于单个开发人员环境的路径,环境变量等的文件。这样,使用其中一个支持的IDE的任何人都可以享受正确的共享设置带来的好处,例如:
还有更多用例,具体取决于具体的IDE。 编辑:对于IntelliJ,另请参阅this FAQ
答案 2 :(得分:0)
我同意它们是与IDE无关的文件,与代码无关,并且不应共享。 但是,那么您应该知道如何重新生成它们。
您可能会遇到这样的情况,即您的远程仓库中不包含这些文件,并且当您克隆代码并在IDEA中打开时,它只会显示很多错误。为什么? *.iml
文件不会重新生成。
您必须使用“文件”-“新建”-“版本控制项目”从IDEA导入。只有这样才能为您生成文件。