JMRI:Foire Aux Questions CVS (FAQ)
Ceci est une liste de questions fréquemment posées sur CVS, en particulier sur la façon dont nous l'utilisons avec JMRI.
 Note: Le code JMRI n'est plus maintenu dans CVS
Pour obtenir le code actuel, veuillez consulter les pages
Accès au code via le Répertoire Git.
 Index Technique 
pour plus d'informations sur la maintenance du code JMRI.
Comment puis-je obtenir une copie de CVS?
De nombreux ordinateurs sont livrés avec CVS installé, y compris Linux et Mac OS X.
Si vous utilisez Windows, vous aurez besoin d'installer un  programme CVS "client" comme
 WinCVS .
Une version récente peut être téléchargée à partir de:
WinCvs120.zip.
Comment puis-je obtenir ma propre copie du code JMRI?
Pour obtenir une copie de la source pour votre propre usage, vous pouvez utiliser "checkout anonyme".
Pour un client en ligne de commande cvs, créez un nouveau répertoire pour le projet,
allez dans ce répertoire, et dites à CVS que vous existez avec
cvs -d:pserver:anonymous@jmri.cvs.sourceforge.net:/cvsroot/jmri login
Ce "login " en ligne de connexion n'est nécessaire
qu'une seule fois, après quoi, il sera rappelé de
votre machine locale. On peut vous demander un mot de passe. Si
oui, appuyez simplement sur retour, sinon le mot de passe vide ne
sera pas accepté. Vous pouvez alors obtenir une copie du
code avec
      
cvs -d:pserver:anonymous@jmri.cvs.sourceforge.net:/cvsroot/jmri co all
      Si vous utilisez un client graphique comme WinCVS,
      déroulez le menu "admin" et sélectionnez "ligne
      de commande" pour obtenir une place pour taper ces commandes.
      Sur d'autres ordinateurs, vous pouvez taper directement sur
      la ligne de commande.
      Pour plus d'information voir la page pour obtenir sa propre copie du code
      source.
    
      Comment puis-je mettre à jour ma copie du code
      JMRI ?
Les gens contribuent à la mises à
      jour du code JMRI presque chaque semaine. Votre copie locale
      ne reçoit pas ces changements jusqu'à ce que
      vous les demandiez, de sorte que vous avez quelque chose de
      stable pour travailler avec. Si vous avez une copie existante
      du code et que vous souhaitez mettre à jour avec le
      contenu le plus récent de CVS, le commande CVS est:
      
cvs -d:pserver:anonymous@jmri.cvs.sourceforge.net:/cvsroot/jmri -q update -dA
L'option "-q" supprime un grand nombre de messages de
routine. L'option "-d " est nécessaire pour dire à
CVS d'apporter aussi de nouveaux répertoires. L'option "-A
", ici combiné avec "-d", signifie que vous voulez le
contenu le plus récent.
    
      Comment puis-je obtenir le code pour une version
      particulière?
CVS utilise des
      «balises» pour faire des ensembles de contenu
      spécifique. Nous les utilisons pour marquer le code
      pour chaque version que nous construisons. Pour obtenir le
      code pour une version, vous pouvez la demander avec une
      commande comme ceci:
      
cvs -d:pserver:anonymous@jmri.cvs.sourceforge.net:/cvsroot/jmri -q co -rRelease-2-1-5
Dans cet exemple, "Release-2-1-5 " est le mot-clé pour
la version 2.1.5. Vous pouvez ajuster le mot clé au besoin.
Si vous avez déjà une version vérifiée
et que vous souhaitiez mettre à jour une version
spécifique, changer le commandement "co" par "update-d"
      
      Elles sont
      automatiquement mises à jour par CVS à chaque
      fois qu'une nouvelle version du fichier est
      vérifié, dans le référentiel.
      S'il vous plaît ne pas les modifier! Si vous contribuez
      avec vos modifications au projet, ces lignes doivent
      être intactes dans le fichier de contribution.
      Comment puis-je mettre à jour une copie existante de
      la source de la version actuelle?
      Comme le code commun change, vous pouvez
      mettre à jour votre copie pour contenir la
      dernière version. Pour ce faire, utilisez:
      
cvs -q update
      
Toute modification sera fusionnée dans les fichiers sur votre disque, et vous devriez être à jour avec vos propres modifications encore présentes.
L'option "-q" supprime un grand nombre de messages d'information pour CVS entre les différents répertoires dans le projet, la commande fonctionne encore si vous l'omettez, mais il sera plus difficile de voir les messages d'erreur réelle.
Quels sont ces messages sur .DS_Store files?
Si vous utilisez Mac OS X, CVS peut vous donner des messages à propos de ". DS_Store ".Ils sont utilisés pour garder une trace de la disposition des fenêtres, etc. Pour supprimer ces messages, il suffit de créer un fichier dans votre répertoire appelé ". cvsignore" et ajouter une ligne
de ". DS_Store"  (sans les guillemets). CVS va ignorer tous les . DS_Store dans tous les arbres extrait de votre répertoire extrait.
Quelle est la convention pour les noms d'étiquettes
En règle générale, trois types de noms d'étiquettessont utilisés:
-  "Release-1-5-4" - la balise définissant une version spécifique du code publié.
Elles sont créées lors de la libération de la version, et ne devrait pas être changées.
-  "Release-1-5-4-branch" - c'est la branche-balise définissant une "branche patch" pour une version
    spécifique. C'est la seule fois que nous font usage de branches CVS, s'il vous plaît noter que nous n'utilisons pas de branches pour le développement normal.
-  "rgj20050603a" - de la forme "initiales" "date" "quelque lettre", ne peut être utilisé que par des
    développeurs individuels pour garder une trace de ce qu'ils font. Tout ce que nous demandons, c'est que vous commenciez une étiquette avec vos initiales.
Comment JMRI est sauvegarder dans CVS?
JMRI se compose de deux grandes arborescences de code, et un certain nombre de répertoires auxiliaires.
Le code est divisé en "jmri", le code principal JMRI, et "test", l'ensemble des
 tests est automatisés. Ils sont séparés de sorte qu'il est facile de construire tout
le logiciel distribué, sans y inclure le code de test.
(Si vous regardez directement le dépôt CVS, vous verrez aussi les répertoires "jmrit" et
"jmrix" , qui sont obsolètes, et conservés exclusivement pour des raisons historiques).
De même, l'information auxiliaire est gardés dans "lib", "xml",
"ressources", "jython", répertoires, etc.
Enfin, il y a un tas d'informations qui ne font pas partie de la
zone de développement d'applications, y compris le répertoire des outils "scripts"
 pour la libération des constructions, le site web, et d'autres.
Nous stockons tout ceci séparément dans le CVS de sorte que vous pouvez vérifier uniquement celle dont vous avez besoin.
Pour simplifier l'extraction d'un arbre de développement, nous offrons un module
CVS nommé "all". Cela vérifie les répertoires nécessaires et les met
dans les endroits nécessaires pour construire en ligne droite.
Certains fichiers semblent être en lecture seule, pourquoi ceci?
Comme le logiciel évolue, les fichiers deviennent parfois obsolètes.
S'ils ne sont pas tous nécessaires, CVS nous permet de les supprimer
des versions ultérieures. Dans ce cas, ils ne se montrent pas du tout lorsque vous vérifiez une copie à jour.
Mais parfois, le fichier doit rester, mais nous voulons  qu'il ne soit plus modifiable. Par exemple, un schéma plus âgés ou fichier DTD doit rester de telle sorte que les références plus anciennes  continuer à travailler, mais nous ne voulons pas que quelqu'un puissent modifier accidentellement l'ancienne version au lieu de la version actuelle du fichier.
Dans de tels cas, nous utilisons le "cvs watch on " option pour
verrouiller efficacement le fichier. La version archivée du fichier est protégée en écriture ainsi
vous ne pouvez pas le modifier sans
remarquer le problème, et les changements ne peuvent pas être vérifiées de nouveau dans CVS
à moins que la montre de fichier soit désactivée.