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.