Forum général.général CVS, notions confuses

Posté par  (site web personnel) .
Étiquettes : aucune
0
4
oct.
2004
Bonjour,

je me suis mis depuis hier a CVS, utilisé conjointement a Netbeans.
Bon je ne viens pas ici pour troller sur netbeans ou eclipse, mais parceque j'ai des difficultés avec certaines commandes cvs, qui me parraissent faire parfois la meme chose, mais pas tout le temps, car il y a bien evidemment des subtilités !

donc les commandes en question : checkout, update, patch

Donc voilà le truc, parfois cvs me dit "Need patch", et là quand je fais update ca lui convient aussi, donc je me demande si je dois utiliser patch... (différence entre Need Update, et need Patch ?)

Pour checkout et update, d'après ce que j'ai compris, le 1er ecrase tout avec la version CVS la plus récente, et le 2nd propose de fusionner notre version avec la + recente du cvs, pour faire encore une nouvelle revision. C'est ca ?

Voilà c'est tout, c'est pas compliqué mais j'aimerai des ptites explications/confirmations avant de me lancer dans mon "mini howto cvs/netbeans pour les nuls"

Merci beaucoup.

ps: Autre chose, pour l'acces au pserver, j'ai créé mes users via adduser --no-home-directory, et jles ai mis dans src, c'est grave ou jdois impérativement passer par la gestion intégrée des users du pserver ? et mes users ainsi créé, jpeu désactiver leur shell, vu que netbeans a un client cvs intégré ?
  • # Reponses

    Posté par  . Évalué à 5.

    checkout permet de récuperer pour la première fois le contenu d'un module CVS, dans une version locale.

    Pour update, c'est assez simple:
    Quand tu as fait un checkout il y a un petit moment, et qu'entre temps un dévellopeur a modifié des fichiers dans le CVS, update ne permet de mettre à jour ta version locale. Mais il faut bien comprendre que l'update n'écrase pas te fichiers locaux, il répercute juste les modifications faites sur le CVS, sur ta version locale.

    Mais ces deux commandes n'effectuent pas d'écriture sur le repository CVS, ne créent pas de branches, ni de numeros de revisions. Elle font juste de la lecture.
  • # Subversion ?

    Posté par  . Évalué à 1.

    Si tu commences à utilise un gestionnaire de version, peut-être devrait tu regarder subversion.
    Subversion est puissant et simple.
    Sa documentation est "tout simplement" fabuleuse :
    http://svnbook.red-bean.com/svnbook-1.0/index.html(...)
    Il est fournit dans toutes les bonnes distributions.

    subversion :
    http://subversion.tigris.org/(...)

    Pour faire le tri dans le FUD qu'on va te dire sur subversion, il y a ça :
    http://www.red-bean.com/sussman/svn-anti-fud.html(...)
    • [^] # Re: Subversion ?

      Posté par  . Évalué à 1.

      le post ci dessus est à -1, et je ne peux pas le "pertinenter" plusieurs fois, mais il mérite qu'on jette un oeil dessus.
      Si CVS ne t'es pas imposé par une contrainte extérieur, autant se tourner vers Subversion (qui est le successeur naturel de CVS).
    • [^] # Re: Subversion ?

      Posté par  (site web personnel) . Évalué à 1.

      merci beaucoup, je vais y jetter un oeil très prochainement !
  • # Update et Patch

    Posté par  . Évalué à 4.

    Comme dit plus haut, tu fais un cvs checkout juste la première fois pour obtenir une version locale initiale des sources; apres tu n'as normalement plus jamais besoin de le faire.
    Ensuite, pour obtenir en local les modifications qui ont été commitées au repository par les autres développeurs, tu fais un cvs update. Apparemment le protocole CVS peut s'y prendre de deux manières pour t'envoyer les mises à jour: envoyer juste un patch, ou tout le fichier. Je suppose que ça dépend s'il y a eu beaucoup de modifications ou pas. Mais ça n'est qu'un détail technique interne, dont tu n'as pas à te soucier. Le "Needs xxx" est informatif. "info cvs" me dit ceci:

    Needs Checkout
    Someone else has committed a newer revision to the repository.
    The name is slightly misleading; you will ordinarily use `update'
    rather than `checkout' to get that newer revision.

    Needs Patch
    Like Needs Checkout, but the CVS server will send a patch rather
    than the entire file. Sending a patch or sending an entire file
    accomplishes the same thing.

    Donc, dans les deux cas, c'est "cvs update" qu'il faut faire. Et ça ne fait que mettre à jour le contenu des fichiers chez toi, pour que tu puisse travailler dessus; aucune version n'est crée.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.