Duplicata possible:
Intellij Idea 9/10, dans quels dossiers archiver (ou non archiver) le contrôle de code source?
J'ai commencé à utiliser WebStorm pour le développement Web et je ne sais pas quoi ajouter et quoi exclure de notre référentiel Git. Il est clair que certains fichiers à l'intérieur du .idea
dossier 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 .gitignore
modèle recommandé pour WebStorm / IntelliJ IDEA?
PS Il y a déjà des questions à ce sujet mais se concentrent généralement uniquement sur l'opportunité d'inclure le .idea
dossier entier ou de l'exclure complètement. Je pense que certains fichiers à l'intérieur du .idea
dossier devraient être contrôlés par la version tandis que d'autres ne devraient pas et j'essaie de savoir lesquels.
la source
.idea
fichiers dans VCS.Réponses:
La page d'assistance officielle devrait répondre à votre question.
Donc, dans votre,
.gitignore
vous pourriez ignorer les fichiers se terminant par.iws
et les fichiersworkspace.xml
ettasks.xml
.la source
*/.idea/workspace.xml */.idea/tasks.xml
**/.idea/workspace.xml **/.idea/tasks.xml
**/
mieux que*/
?Je veux juste présenter une alternative plus récente. Il existe un outil en ligne qui génère des
.gitignore
fichiers basés sur les systèmes d'exploitation, les IDE et les langages de programmation que vous utilisez peut-être.gitignore.io
EDIT Avertissement: Ne copiez pas ce fichier, copiez plutôt le fichier généré par le site Web, ils font un bon travail pour le garder à jour. C'est juste un exemple.
Le fichier généré pour
IntelliJ
contient les éléments suivantsla source
.idea/
" - plus maintenant . Le .gitignore actuellement généré n'a pas d'.idea/
entrée..idea/dictionaries
carrément?.gitignore
. Je montre juste l'outil qui le fait. Je suppose que c'est un fichier personnel. Vous pouvez ajouter des éléments dans votre dictionnaire qui pourraient ne pas être valables pour d'autres. Surtout lorsque vous nettoyez les messages LINT. Je crois que si vous êtes d'accord entre vos coéquipiers, vous pourriez l'ajouter à votre dépôt git.https://www.gitignore.io/api/jetbrains
Créé par https://www.gitignore.io/api/jetbrains
la source
Pendant quelques années, j'étais partisan de l'utilisation d'un spécifique
.gitignore
pour IntelliJ avec cette configuration suggérée .Plus maintenant.
IntelliJ est mis à jour assez fréquemment, les spécifications des fichiers de configuration internes changent plus souvent que je ne le souhaiterais et le produit phare de JetBrains excelle à se configurer automatiquement en fonction des fichiers de construction maven / gradle / etc.
Donc, ma suggestion serait de laisser tous les fichiers de configuration de l'éditeur hors projet et de demander aux utilisateurs de configurer l'éditeur à leur guise. Des choses comme le style de code peuvent et doivent être configurées au niveau de la construction; dites utiliser 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 là où ils devraient être.
la source
.gitignore
juste pour JB comme je l'ai expliqué dans ma réponse.Jetbrains fournit le .gitignore suivant pour leurs programmes
https://github.com/github/gitignore/blob/master/Global/JetBrains.gitignore
la source
Vous pouvez simplement les ignorer tous en les ajoutant
.idea/*
au.gitignore
fichier.la source
Bien que le maintien du bon
.gitignore
fichier soit utile, j'ai trouvé que cette approche alternative est beaucoup plus propre et plus facile à utiliser.my_project
et à l'intérieurgit clone my_real_project
du dépôt réel du projet.my_project
et marquez-lemy_project/my_real_project
comme racine VCS.my_project/.idea
cela ne polluerait pas votre dépôt git parce qu'il vit joyeusement en dehors du dépôt git, ce que vous voulez. De cette façon, vos.gitignore
fichiers restent également propres.Cette approche fonctionne mieux pour les raisons ci-dessous.
1 - le
.gitignore
fichier reste propre et nous n'avons pas à insérer de lignes liées aux produits JetBrains, ce fichier est mieux utilisé pour les binaires et les bibliothèques et le contenu autogène.2 - Intellij continue de mettre à jour ses projets et les fichiers à l'intérieur
.idea
continuent de changer chaque version importante de JB. Cela signifie que nous devons continuer à mettre à jour nos informations en.gitignore
conséquence, ce qui n'est pas une utilisation idéale du temps.3 - Intellij a le modèle imparfait ici, la plupart des éditeurs Atom, VS Code, Eclipse ... personne ne stocke son contenu IDE directement dans la racine du projet. JB ne devrait pas être une exception non plus. C'est la responsabilité de Jetbrains de garder ces fichiers suivis en dehors de la racine du projet. Ils doivent s'abstenir de polluer la racine VCS. Cette approche fait exactement cela. Le
.idea
dossier est conservé en dehors de laPROJECT_ROOT
J'espère que cela t'aides.
la source
/.idea
dans .gitignore fonctionne très bien; Habituellement, le problème sera résolu par cette commande:git rm --cached -r .idea
/.idea
ne fonctionne pas, vous pouvez également consulter d'autres réponses et les directives officielles de JBSupprimer le dossier .idea
Ajouter une règle
Valider le fichier .gitignore
Le prochain commit sera ok
la source