Lors de l'utilisation de Pycharm, j'ai obtenu une fenêtre contextuelle de nulle part me demandant si je voulais ajouter ce fichier à Git, et notant que je pouvais le faire manuellement plus tard si je le voulais. Qu'est-ce que ce dossier et pourquoi cette recommandation m'est-elle adressée?
Tous les paramètres spécifiques au projet pour le projet sont stockés dans le dossier .idea.
Pendant le travail, un nouveau fichier (vcs.xml
) a été créé et vous donne donc la possibilité de l'ajouter à Git. Les fichiers dans le .idea/
ne devrait généralement pas atteindre Git, et il est généralement préférable de l'ajouter à .gitignore
fichier.
Si vous gitignore le .idea
dossier alors les autres ne pourront pas accéder aux paramètres spécifiques du projet comme la configuration d'exécution, les variables d'environnement, les paramètres de construction, etc., et d'autres ajouts divers comme dictionnaires spécifiques au projet.
Ajouter vcs.xml
à votre projet et ne gitignore pas entièrement .idea
. En fait, Jetbrains recommande d'ignorer certains fichiers (répertoriés ci-dessous) tout en ajoutant le reste au dépôt.
Utilisez ceci . Gitignore pour tous vos produits basés sur Jetbrains: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio et WebStorm
Juste au cas où le lien deviendrait invalide pour une raison quelconque, je le colle directement ici
# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf
# 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
Pour plus de détails, reportez-vous à Article de support Jetbrains
Il y a bien description officielle de JetBrains dont les fichiers à mettre dans git.
Donc, dans votre .gitignore
vous pourriez ignorer les fichiers se terminant par .iws
, et le workspace.xml
et tasks.xml
des dossiers. Ici vous pouvez trouver un très bon exemple de fichier gitignore pour les IDE JetBrains.
Le dossier .idea (masqué sous OS X) à la racine de la solution contient les fichiers de paramètres spécifiques au projet IntelliJ. Ceux-ci incluent des détails par projet tels que le mappage VCS et les configurations d'exécution et de débogage, ainsi que des détails par utilisateur, tels que les fichiers actuellement ouverts, l'historique de navigation et la configuration actuellement sélectionnée.
Certains fichiers doivent être validés pour le contrôle de code source, certains doivent être exclus. Habituellement, il faut partager les éléments suivants:
indexLayout.xml - ce fichier est pour les informations sur les dossiers externes attachés à la solution, qui ne font pas partie d'un projet .NET. Ces dossiers peuvent être ajoutés via un clic droit sur une solution -> "Attacher un dossier existant ...".
vcs.xml - ce fichier est pour les informations internes liées à VCS, comme VCS est activé, etc.
runConfigurations - ce dossier est destiné aux configurations d'exécution partagées.
D'autres fichiers à l'intérieur du dossier .idea peuvent être exclus en toute sécurité de VCS (ex. Modules.xml et riderModule.iml), car Rider peut les générer à nouveau.
Par JetBrains, les fichiers ci-dessous peuvent être exclus en toute sécurité: https://github.com/github/gitignore/blob/master/Global/JetBrains.gitignore