Intellij Idea 9/10, які папки перевірити (чи не перевірити) керування джерелами?


119

Наша команда щойно перейшла з Netbeans до Intellij 9 Ultimate, і потрібно знати, які файли / папки, як правило, повинні бути виключені з управління джерелами, оскільки вони не є "переносними робочими станціями", тобто: вони посилаються на шляхи, які існують лише на комп'ютері одного користувача.

Наскільки я можу сказати, Intellij хоче проігнорувати більшість проектів .idea, в тому числі

.idea/artifacts/*
.idea/inspectionProfiles/*
.idea/copyright/*
.idea/dataSources.ids
.idea/dataSources.xml
.idea/workspace.xml

Однак, схоже, хочеться перевірити .imlфайли, які існують у кореневій директорії кожного модуля.

Я спочатку перевірив у всьому .ideaкаталозі за допомогою командного рядка, який, очевидно, не усвідомлює, що ідея "повинна" ігноруватися. .ideaЗазвичай ігнорується весь каталог?

Відповіді:


104

У нас є стаття FAQ, яка висвітлює це питання.

Формат [.idea] використовується всіма останніми версіями IDE за замовчуванням. Ось що вам потрібно поділитися:

  • Всі файли в .idea директорії в корені проекту , за винятком тих workspace.xml і tasks.xml файлів , які налаштування конкретних користувачів магазину
  • Усі файли модулів .iml, які можуть бути розміщені в різних каталогах модулів (стосується IntelliJ IDEA)

Будьте уважні до спільного використання наступного:

  • Артефакти Android, які створюють підписану збірку (міститимуть паролі зберігання ключів)
  • В IDEA 13 і новіших даних dataSources.ids , datasources.xml можуть містити паролі бази даних. IDEA 14 вирішує цю проблему .

Ви можете розглянути не розділяти наступне:

  • .iml- файли для проектів на базі Gradle або Maven , оскільки ці файли будуть генеровані під час імпорту
  • Файл gradle.xml , дивіться цю дискусію
  • папка словників користувача (щоб уникнути конфліктів, якщо інший розробник має те саме ім'я)
  • XML - файли під .idea / бібліотеки в разі , якщо вони генеруються з Gradle або Maven проекту

.idea Каталог - це заміна старого.


2
Так, це актуально, істотних змін у файлах проекту не було.
CrazyCoder

72
@CrazyCoder (+1) Це полегшило б наше життя, якби ви, хлопці, помістили конкретні для проекту файли та файли, що стосуються користувачів, в окремі каталоги.
IJ Kennedy

3
Коментувати стару тему, але підхід FAQ до спільного використання всієї папки .idea (крім робочої області.xml та task.xml) є проблематичним, оскільки різні файли змінюються між машинами та між сесіями. Що мене насправді помиляє: Python / Library на Mac знаходиться в двох різних місцях на різних Macs, тому pycharm.xml опиняється навколо.
Меттью Корнелл

29
це досить поганий привід для поширених запитань. це велика нитка, коли люди задають питання. як щодо прикладу .gitignore для проекту?
Джефрі Блатман

12
це неймовірно / неможливо, що в одній папці знайдеться "якийсь так, хтось ні" --- це все одно той самий божевілля через чотири роки? дякую
Fattie


6

Чи не точну відповідь на питання , але є приклади файлів .gitignore доступні тут в тому числі один для JetBrains , який включає в себе IntelliJ.


1
Хотілося б, щоб я спростував інші відповіді, у яких немає питань. Дякуємо за дійсну відповідь на вихідний код.
bobjones


5

Можливо, ця публікація виявиться цікавою: Злиття файлів IntelliJ IDEA .IPR та .IWS

Здається , зробити висновок , що ви повинні додати всі файли , за винятком: workspace.xml, dataSources.xml, sqlDataSources.xmlі dynamic.xml. Відповідь там зосереджена на тому, щоб мати файли, які не змінюються просто від відкриття редактора або внесення конкретних змін.


4

Я використовую PHPStorm.

Ось приклад фрагмента для вашого .gitignore

# Ignore the following 2 PHPStorm files only workspace and tasks file
**/.idea/workspace.xml
**/.idea/tasks.xml

Усі інші файли в .ideaкаталозі повинні бути передані у ваше сховище.

наприклад: (виконувати все інше в .ideaкаталозі)

new file:   .idea/.name
new file:   .idea/encodings.xml
new file:   .idea/framework.iml
...

Документи: як керувати проектами в системах управління версіями

Ось що вам потрібно поділитися:

Всі файли в каталозі .idea в корені проекту , за винятком тих workspace.xml і tasks.xml файлів , які налаштування конкретних користувачів магазину

Усі файли модулів .iml, які можуть бути розміщені в різних каталогах модулів (стосується IntelliJ IDEA)

Отже, вчинити все, крім workspace.xmlі tasks.xml.


0

Так, я так вірю. Ви можете перевірити конфігурацію SVN, щоб побачити, що ігнорується, і додати все, що, на вашу думку, слід ігнорувати.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.