web-dev-qa-db-fra.com

Quels fichiers de projets NetBeans doivent aller dans le contrôle de source?

Nous utilisons normalement Eclipse pour un projet Java particulier, mais récemment, j'ai importé le projet dans NetBeans pour utiliser ses fonctionnalités de création de boîtes de dialogue.

Comme j'y reviendrai probablement, je voulais stocker les fichiers de projet NetBeans dans le contrôle de version. Cependant, je ne veux pas valider des fichiers qui sont "les miens" par opposition à "projet", c’est-à-dire des fichiers avec mes propres paramètres qui seraient en conflit avec ceux d’un autre utilisateur.

NetBeans a créé la structure suivante dans la zone de projet de niveau supérieur:

nbbuild
nb-build.xml
nbproject
    <various files>
    configs
    private

Il est clair que nbbuild est une sortie de construction, de sorte que cela ne rentre pas. Le fichier nb-build.xml semble vraisemblable, de même que la plupart des nbproject. Cependant, nbproject/private suggère que c'est "le mien". Jetant un coup d'œil aux "configs", ce n'est pas clair pour moi si c'est le mien ou le projet ...

Quelqu'un a des directives?

51
Peter Cardona

L'article de la base de connaissances NetBeans sur les fichiers de projet et le contrôle de version traite des fichiers de projet NetBeans, avec des conseils clairs sur les fichiers propres au projet (pouvant être partagés via le contrôle de version) et ceux spécifiques à l'utilisateur.

Voici la section sur le contrôle de version:

Si le projet est extrait d'un système de contrôle de version, les dossiers build (ou nbbuild), dist (ou nbdist) et nbproject/private ne doivent pas être archivés dans ce système de contrôle de version.

Si le projet est sous les systèmes de contrôle de version CVS, Subversion ou Mercurial, les fichiers "ignorer" appropriés sont créés ou mis à jour pour ces répertoires lors de l'importation du projet.

Bien que nbproject/private devrait être ignoré, nbproject devrait être vérifié dans le système de contrôle de version. nbproject contient les métadonnées du projet qui permettent aux autres utilisateurs d'ouvrir le projet dans NetBeans sans avoir à importer le projet au préalable.

53
Peter Cardona

Il s’avère que Thomas et Petercardona ont tous deux raison. NetBeans vous recommande de n'importer que du code source et/ou de la documentation. Oh et le dossier nbproject mais pas les dossiers * nbproject/private **.

Extrait de article de la Base de connaissances NetBeans sur l'importation de projets Eclipse }:

Considérations sur le contrôle de version

Si le projet est extrait d'un le système de contrôle de version, le build (ou nbbuild), le dist (ou nbdist), et le Les dossiers nbproject/private ne doivent pas être archivés dans ce contrôle de version système.

Si le projet est sous le CVS, Version Subversion ou Mercurial systèmes de contrôle, le .__ approprié. Les fichiers "ignorer" sont créés ou mis à jour pour ces répertoires lorsque le projet est importé.

Bien que nbproject/private devrait être ignoré, nbproject doit être vérifié dans le système de contrôle de version . nbproject contient les métadonnées du projet qui permettent aux autres utilisateurs d'ouvrir le fichier projet dans NetBeans sans avoir à importer le projet en premier.

19
Richard Hurt

Comme testé avec Netbeans 6.8, seuls les project.xml, configurations.xml et le fichier makefile principal (celui personnalisable dans le répertoire parent du répertoire 'nbproject' avec les définitions de cible pré/post) doivent être distribués via le référentiel. Tous les autres fichiers seront automatiquement (re) générés par Netbeans (Makefile-impl.ml, Makefile-variables.ml, tous les Makefile-$CONF, Package-$CONF.bash). Le répertoire 'privé' doit également être ignoré, évidemment.

2
Johan Boulé

Aucun.

Seuls les fichiers source, les scripts de génération et la documentation non générée automatiquement (par exemple, la sortie d'outils tels que JavaDoc et Doxygen) doivent être archivés dans un référentiel. Des éléments tels que les fichiers de projet, les fichiers binaires et la documentation générée ne doivent pas être archivés.

La raison est double. Tout d'abord, vous ne voulez pas écraser les paramètres de projet d'un autre développeur avec les vôtres. Deuxièmement, il se peut que d’autres développeurs n’utilisent pas le même IDE que vous (ou même un IDE du tout), ne leur donnez donc pas plus qu’ils ne doivent construire (le projet ou sa documentation associée). ) ou exécuter le projet.

2
Thomas Owens

Vous pouvez aussi vérifier
https://github.com/github/gitignore/blob/master/Global/NetBeans.gitignore

Ce projet open source contient
Une collection de modèles .gitignore utiles

0
ahmednabil88