web-dev-qa-db-fra.com

Que faut-il gitignore dans le dossier .idea?

Dupliquer possible:
Intellij Idea 9/10, dans quels dossiers vérifier (ou ne pas vérifier) ​​le contrôle de source?

J'ai commencé à utiliser WebStorm pour le développement Web et je ne sais pas quoi ajouter ni quoi exclure de notre référentiel Git. Clairement, certains fichiers du dossier .idea sont censés être contrôlés par la version, comme les paramètres de la bibliothèque externe (jsLibraryMappings.xml), mais d’autres changeront probablement très souvent et sont spécifiques au développeur (par exemple, workspace.xml).

Quel est le modèle .gitignore recommandé pour WebStorm/IntelliJ IDEA?

P.S. Il y a déjà des questions à ce sujet, mais généralement, vous devez uniquement inclure le dossier .idea complet ou l'exclure complètement. Je pense que certains fichiers du dossier .idea devraient être contrôlés par la version, tandis que d'autres ne le devraient pas. J'essaie de trouver lesquels.

416
Borek Bernard

La page de support officielle devrait répondre à votre question.

Donc, dans votre .gitignore, vous pouvez ignorer les fichiers se terminant par .iws, ainsi que les fichiers workspace.xml et tasks.xml.

365
hifkanotiks

Je veux juste présenter une alternative plus récente. Il existe un outil en ligne qui génère des fichiers .gitignore en fonction des systèmes d'exploitation, des environnements de développement intégrés et des langages de programmation que vous pourriez utiliser.

gitignore.io


EDIT Disclaimer: Ne copiez pas ce fichier, copiez le fichier généré par le site à la place, ils le garderont bien à jour. C'est juste un exemple.

Le fichier généré pour IntelliJ contient les éléments suivants

# Created by https://www.gitignore.io/api/intellij

### Intellij ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

# User-specific stuff:
.idea/workspace.xml
.idea/tasks.xml
.idea/dictionaries
.idea/vcs.xml
.idea/jsLibraryMappings.xml

# Sensitive or high-churn files:
.idea/dataSources.ids
.idea/dataSources.xml
.idea/dataSources.local.xml
.idea/sqlDataSources.xml
.idea/dynamic.xml
.idea/uiDesigner.xml

# Gradle:
.idea/gradle.xml
.idea/libraries

# Mongo Explorer plugin:
.idea/mongoSettings.xml

## File-based project format:
*.iws

## Plugin-specific files:

# IntelliJ
/out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

### Intellij Patch ###
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721

# *.iml
# modules.xml
195
GabrielOshiro

https://www.gitignore.io/api/jetbrains

Créé par https://www.gitignore.io/api/jetbrains

### JetBrains ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

# User-specific stuff:
.idea/workspace.xml
.idea/tasks.xml
.idea/dictionaries
.idea/vcs.xml
.idea/jsLibraryMappings.xml

# Sensitive or high-churn files:
.idea/dataSources.ids
.idea/dataSources.xml
.idea/dataSources.local.xml
.idea/sqlDataSources.xml
.idea/dynamic.xml
.idea/uiDesigner.xml

# Gradle:
.idea/gradle.xml
.idea/libraries

# Mongo Explorer plugin:
.idea/mongoSettings.xml

## File-based project format:
*.iws

## Plugin-specific files:

# IntelliJ
/out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

### JetBrains Patch ###
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721

# *.iml
# modules.xml
# .idea/misc.xml 
# *.ipr 
24
xgqfrms

Pendant quelques années, j’ai été partisan d’utiliser un .gitignore spécifique pour IntelliJ avec cette configuration suggérée .

Plus maintenant.

IntelliJ est mis à jour assez souvent, les spécifications de fichiers de configuration internes changent plus souvent que je ne le souhaiterais et le produit phare de JetBrains se distingue par sa configuration automatique en fonction des fichiers de construction maven/gradle/etc.

Ma suggestion serait donc de laisser all les fichiers de configuration d'éditeur en dehors du projet et de laisser les utilisateurs configurer l'éditeur à leur guise. Des éléments tels que le style de code peuvent et doivent être configurés au niveau de la construction; dire en utilisant Google Code Style ou CheckStyle directement sur Maven/Gradle/sbt/etc.

Cela garantit la cohérence et laisse les fichiers de l'éditeur hors du code source qui, à mon avis, est ce qu'ils devraient être.

2
Frankie

Jetbrains fournit le fichier .gitignore suivant pour leurs programmes

https://github.com/github/gitignore/blob/master/Global/JetBrains.gitignore

# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf

# Generated files
.idea/**/contentModel.xml

# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml

# Gradle
.idea/**/gradle.xml
.idea/**/libraries

# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn.  Uncomment if using
# auto-import.
# .idea/modules.xml
# .idea/*.iml
# .idea/modules

# CMake
cmake-build-*/

# Mongo Explorer plugin
.idea/**/mongoSettings.xml

# File-based project format
*.iws

# IntelliJ
out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Cursive Clojure plugin
.idea/replstate.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

# Editor-based Rest Client
.idea/httpRequests

# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
1
Cereal