Подтвердить что ты не робот

Обязательно ли сохранять *.iml файлы в контроле версий?

Теперь я переключился на Android Studio и сохранил мои проекты в Git с помощью Source Tree. Всякий раз, когда я добавляю или удаляю любую библиотеку из моего модуля, ее файл .iml также изменяется. Это действительно не имеет значения, если я фиксирую *.iml, потому что они автоматически генерируются в других Android Studio. Однако здесь в нем говорится, что вы должны хранить *.iml. Мой вопрос: действительно ли нам нужно делиться нашим *.iml с другими? Если да, то почему?

4b9b3361

Ответ 1

Общая рекомендация:

  • сделать проекты максимально возможными IDE-агностиками,
  • не создавать сгенерированные файлы.

Итак, ответ: лучше сделать такие файлы проигнорированными для VCS.

Ответ 2

Да,.iml Файлы подходят для контроля версий (см. этот комментарий)

Верно также, что проекты как IDE-agnostic, насколько это возможно, однако, обмен файлами .iml не нарушает ничего для людей, разрабатывающих с другой IDE. Для них это всего лишь куча относительно небольших файлов, которые их не касаются.

Хорошей практикой для групп, использующих разные IDE одновременно, является сохранение каждого файла проекта IDE в VCS, исключая только те, которые содержат пути, переменные среды и т.д., характерные для одной среды разработчиков. Таким образом, любой, кто использует одну из поддерживаемых IDE, может пользоваться преимуществами надлежащей общей настройки, например, например:

  • совместное использование конфигураций сборки
  • совместное использование зависимостей
  • конфигурации для автоматического контроля качества кода

Существует больше случаев использования, в зависимости от конкретных IDE в игре. Изменить: для IntelliJ также см. этот FAQ