Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

: Comparatif des systèmes de contrôle de version

Posté par Foxy (page perso, ). Modéré le 10 février 2004.
Un article sur le site "OnLamp" fait le point sur les différents systèmes de contrôle de version disponibles en open-source, ainsi que BitKeeper en raison de son utilisation pour le développement du noyau Linux.

L'auteur revient rapidement sur l'utilité d'un système de contrôle de version (CVS étant le plus utilisé à l'heure actuelle) lorsqu'un projet atteint une taille importante et que le développement se fait à plusieurs.

Puis il liste les fonctionnalités communes à ces systèmes : commits atomiques, merge de branches, "repositories" distribués, renommage/suppression de répertoire/fichier avec conservation de l'historique du versioning... (désolé pour ce franglais mais les utilisateurs de ces systèmes me comprendront ;-) ).

ll présente enfin les avantages et inconvénients des systèmes suivants : CVS, Subversion, Arch, OpenCM, Aegis, Monotone et BitKeeper.

Une lecture conseillée à toute personne souhaitant travailler sur un projet à plusieurs développeurs et se faire une idée de ce qui existe pour cela en dehors de CVS.

Note du modérateur : j'ai rajouté le second lien évoqué dans une dépêche précédente.

> Lire la dépêche (59 commentaires, moyenne: 1,6).  

Vous avez demandé le commentaire #345344.

Re: Comparatif des systèmes de contrôle de version

Posté par cumulus () le 10/02/2004 à 07:49. (lien). Évalué à 4.

désolé pour ce franglais mais les utilisateurs de ces systèmes me comprendront

Ceux qui veulent apprendre ne comprennent pas forcément. Alors bien sûr il y a google sous le coude mais autant éviter un jargon qui peut être parfois rédhibitoire.

  • [^]Re: Comparatif des systèmes de contrôle de version

    Posté par Silence (page perso, ) le 10/02/2004 à 08:07. (lien). Évalué à 4.

    Le plus simple aurait été de donner la version francaise... afin que ceux qui ne comprennent pas, le puissent :

    conservation de l'historique du versioning = conservation de l'historique des versions

    En plus c'était fastoche :^)

    --
    ^d^c
    • [^]Re: Comparatif des systèmes de contrôle de version

      Posté par Nÿco (Jabber id, page perso, ) le 10/02/2004 à 08:25. (lien). Évalué à 0.

      versioning ne se traduit pas par versions

      --
      Jabber ID : xmpp:Nyco@jabber.fr
      • [^]Re: Comparatif des systèmes de contrôle de version

        Posté par #3588 () le 10/02/2004 à 09:10. (lien). Évalué à 3.

        une expression ne se traduit pas mot à mot...

        [^]Traduction

        Posté par LupusMic (page perso, ) le 10/02/2004 à 09:29. (lien). Évalué à 1.

        Versonification ?

        Attention ! C'est presque de la technique poêtique ;)

        • [^]Re: Traduction

          Posté par jeff110 () le 10/02/2004 à 18:24. (lien). Évalué à 1.

          raison de plus pour expliquer, mais peut etre n'est ce pas si evident que ça n'y parrait ...

    [^]Re: Comparatif des systèmes de contrôle de version

    Posté par tinodeleste () le 10/02/2004 à 08:25. (lien). Évalué à 5.

    Ceux qui veulent apprendre ne comprennent pas forcément. Alors bien sûr il y a google sous le coude mais autant éviter un jargon qui peut être parfois rédhibitoire.

    le mieux c'est de comprendre la base cvs:
    http://www.freenix.org/curiosite/cvs.html(...)

    ca permet de voir que commit (commettre ?), merge (fusionner ?) et repositories (dépôts ?) ne sont pas incompréhensibles parce qu'ils sont en anglais, mais parce que leur sens est lié à leur cadre d'utilisation...

    • [^]Re: Comparatif des systèmes de contrôle de version

      Posté par cumulus () le 10/02/2004 à 08:43. (lien). Évalué à 2.

      commit (commettre ?), merge (fusionner ?) et repositories (dépôts ?) ne sont pas incompréhensibles parce qu'ils sont en anglais, mais parce que leur sens est lié à leur cadre d'utilisation...

      Je n'en doute pas ! J'estime juste que dans le cadre d'une news, il serait bon d'être le plus explicite possible. Merci pour ton lien !

      [^]Re: Comparatif des systèmes de contrôle de version

      Posté par #3588 () le 10/02/2004 à 09:20. (lien). Évalué à 2.

      Dépôt et fusionner oui, commettre c'est quand même pas terrible... Dans ton lien ils proposent enregistrer, c'est mieux mais ça peut porter à confusion... Appliquer me paraît mieux. Quelqu'un voit d'autres candidats ?

      • [^]Re: Comparatif des systèmes de contrôle de version

        Posté par Quzqo () le 10/02/2004 à 15:57. (lien). Évalué à 1.

        reporter en configuration ? versionner (bof) ?

        Dans un SCM (comprendre Système de Gestion de Configuration), il y a pour moi x étapes :

        ° Pour un objet versionné (VO) : fichier ou répertoire
        - Créer/Référencer en gestion de configuration un VO : create ou mkelem
        - Editer un VO (pour le modifier <=> définir son contenu lors de la création) : checkout
        - Reporter en configuration une modification d'un VO : commit ou checkin
        - Détruire un VO : remove ou rm
        - Déréférencer un VO (supprimer toutes les références d'un VO) : rmelem

        ° Pour les opérations de gestion de versions :
        - Créer une branche de version : branch ou mkbranch
        - Fusionner deux versions : merge
        - Comparer ... : diff
        - Créer une étiquette (tag ou label) : mklbtype
        - Poser une étiquette : tag ou mklabel

        Et je dois en oublier... ,o)

        PS: quelques exemples de commandes fournis en italique (diffèrent selon les SCM ou ne sont pas toujours présents)

        --
        BXN - La vie est un (men)songe.

      [^]Re: Comparatif des systèmes de contrôle de version

      Posté par bobert () le 10/02/2004 à 09:41. (lien). Évalué à 2.

      to commit (dans ce contexte) -> valider

      • [^]Re: Comparatif des systèmes de contrôle de version

        Posté par Mr F (page perso, ) le 10/02/2004 à 12:36. (lien). Évalué à 0.

        Certainnement pas.

        To commit = Confier

        ça me parait un peu plus correcte vu que l'action consiste à envoyer les données modifiés au serveur. On pourrait aussi le traduire par envoyer je pense. Il n'y a aucun processus de validation la dedans.

        • [^]Re: Comparatif des systèmes de contrôle de version

          Posté par daverick () le 10/02/2004 à 13:39. (lien). Évalué à 0.

          Quand j'ai un problème de traduction, je vais voir http://w3.granddictionnaire.com(...)
          >>
          Le terme archiver désigne mieux cette opération complexe que les termes valider et soumettre, couramment employés, qui n'en recouvrent que partiellement le concept.
          L'utilisation du terme commit en français, comme dans faire un commit ou dans la forme verbale francisée commiter, est répandue dans Internet dans des sources d'origine française. Il s'agit d'un emprunt inutile à l'anglais to commit. Au Québec, cet anglicisme ne semble pas en usage.

          [Office québécois de la langue française, 2002]
          <<

          • [^]Re: Comparatif des systèmes de contrôle de version

            Posté par Mr F (page perso, ) le 10/02/2004 à 17:25. (lien). Évalué à 1.

            Non, je ne suis pas d'accord, En l'occurence tu n'archive pas sur le cvs, ce n'est pas une archive du tout !!! C'est un endroit de travail ou le/les fichier(s) seront accessible de tous.

            Une traduction ce n'est jamais du mot à mot, il faut prendre le contexte et dans celui ci, "confier" correspond bien mieux.

            Et moi personnellement, quand j'ai un problème de traduction je prend mon "Larousse Français/Anglais".

            • [^]Re: Comparatif des systèmes de contrôle de version

              Posté par Nÿco (Jabber id, page perso, ) le 10/02/2004 à 22:38. (lien). Évalué à 0.

              Le Larousse est plus littéraire, le Robert & Collins est plus technique, c'est peut-être celui qu'il te faut.

              --
              Jabber ID : xmpp:Nyco@jabber.fr

          [^]Re: Comparatif des systèmes de contrôle de version

          Posté par bobert () le 10/02/2004 à 17:30. (lien). Évalué à 0.

          Certainnement pas.

          Ah bon, vraiment ? Des références pour appuyer cette affirmation ?

          De mon côté, voici de quoi appuyer mon sentiment que l'expression to commit a transaction, puisque c'est de cela qu'on parle, soit couramment traduite en Français par valider une transaction:


          • Cours Supelec:
            http://wwwlsi.supelec.fr/www/yb/poly_bd/sql/poly_47.html(...)

          • Office québécois de la langue française:
            http://www.olf.gouv.qc.ca/ressources/bibliotheque/dictionnaires/Int(...)

          • Cours du CNAM:
            http://datom.dyndns.org/Cnam/cours(...) 2003 - 2004/Client Serveur/MT.pdf

          • Cours du LORIA:
            http://www.loria.fr/~skaf/cours/sybase/transaction/tsld055.htm(...)



          • Dois-je continuer ?



            To commit = Confier

            ça me parait un peu plus correcte vu que l'action consiste à envoyer les données modifiés au serveur. On pourrait aussi le traduire par envoyer je pense. Il n'y a aucun processus de validation la dedans.


            Je me permets de te renvoyer aux liens suscités pour apprendre les notions de transaction et d'atomicité, que visiblement tu ne maîtrises pas.

            La validation d'une transaction survient après avoir modifié des données au sein de cette transaction. Ainsi avec cvs, on n'effectue de cvs commit (validation de la transaction) qu'après un cvs {update, add, delete}

            Je te propose également de te renseigner un minimum avant d'affirmer des conneries. Il s'agit de vocabulaire technique, et ouvrir ton dico Anglais-Français pour espérer trouver la bonne traduction est illusoire. Le plus judicieux étant tout simplement de faire confiance à qqn qui a plus d'expérience que toi dans un domaine donné.

          • [^]Re: Comparatif des systèmes de contrôle de version

            Posté par Rhaegar () le 10/02/2004 à 20:52. (lien). Évalué à 0.

            Faudrait peut-être aller chercher des définitions qui correspondent au contexte. Ce n'est pas en prenant la première définition venue sans se soucier du contexte que ce sera la bonne. C'est ce que fait un traducteur automatique, ou quelqu'un qui n'y connaît rien.

            [^]Re: Comparatif des systèmes de contrôle de version

            Posté par Mr F (page perso, ) le 11/02/2004 à 01:55. (lien). Évalué à 1.

            Effectivement, je me suis trompé (dans l'hypothése ou effectivement cvs effectus des tâches de vérification/validation/certification, je n'irais pas vérifier, je te fais confiance, cvs ne se contente pas d'inclure le fichier mais il effectue un processus de validation quelquonque, car sinon confier est plus approprié).

            Pour ton expèrience, désolé, j'suis pas sensé savoir que l'on doit croire sur parole et sans justification aucune ce que tu dis (proclame ?).

            Pour ton agressivité, admettons que ma phrase "Certainnement pas" t'es froissé. Admettons.

            [^]Re: Comparatif des systèmes de contrôle de version

            Posté par #3588 () le 11/02/2004 à 10:07. (lien). Évalué à 1.

            « De mon côté, voici de quoi appuyer mon sentiment que l'expression to commit a transaction, puisque c'est de cela qu'on parle, soit couramment traduite en Français par valider une transaction: »

            C'est une proposition connue, et qui n'est pas nettement meilleure que d'autres comme archiver, confier, appliquer. C'est un peu mieux que les traductions un peu trompeuses « mettre à jour » et « exporter » qui nécessitent de préciser que la cible est le dépôt, pas le répertoire de travail.

            Le problème, c'est que malgré ce que tu dis, tu fais bien de la traduction littérale : tu prends la même notion dans un domaine différent (les SGBD) et tu la traduis dans ce domaine là sans réfléchir. C'est compréhensible pour un admin de bases de donner (comme « confirmer »), mais il faut aussi apprendre à traduire, ce que visiblement tu ne maîtrises pas (pour te reprendre cette expression sympathique). Valider a bien d'autres sens, et c'est ce qui fait que ce mot est assez peu utilisé dans ce contexte, le franglais et des expressions plus longues sont employés pour éviter les confusions. Ça peut être une traduction mais c'est une traduction médiocre, donc si on se pose le problème de la traduction on ne s'en satisfait pas.

            • [^]Re: Comparatif des systèmes de contrôle de version

              Posté par Xavier Jacquelin (Jabber id, page perso, ) le 22/02/2004 à 00:37. (lien). Évalué à 1.


              C'est une proposition connue, et qui n'est pas nettement meilleure que d'autres comme archiver, confier, appliquer. C'est un peu mieux que les traductions un peu trompeuses « mettre à jour » et « exporter » qui nécessitent de préciser que la cible est le dépôt, pas le répertoire de travail.


              Valider est le terme le plus utilisé, parce que justement c'est la même notion que pour les SGBD, en effet on valide les changements effectués. Et c'est meilleur que "archiver" (qui ne vuet rien dire dans ce contexte, puisqu'on archive rien), et surtout que "confier" (qui ne veut absolument rien dire ici, quand tu fais un delete puis un commit tu ne confis rien au serveur cvs). Pour "appliquer" ça pourrait passer en précisant appliquer les chagements car appliquer est un terme très générique.

              Et je ne vois pas le rapport avec de la traduction littérale, c'est un terme technique, soit on a 1 terme officiel, soit on utilise le terme le plus usité, mais on ne met pas n'importe quoi parce que ça nous plaît, après pour se comprendre si chacun utilise le terme qui lui plaît on a pas fini (et c'est d'ailleurs pour ça, AHMA, que les gens gardent souvent le terme anglais ou sa francisation).

            [^]Re: Comparatif des systèmes de contrôle de version

            Posté par #3588 () le 11/02/2004 à 10:09. (lien). Évalué à 1.

            J'oubliais une chose : ce n'est pas parce qu'on crie (en écrivant en gras) que l'on a raison. Si le but est de convaincre, ce manque de respect provoque plutot l'effet inverse.

      [^]Re: Comparatif des systèmes de contrôle de version

      Posté par anonyme512 () le 11/02/2004 à 09:01. (lien). Évalué à 1.

      repositories (dépôts ?)
      la traduction plus ou moins officielle pour repository est référentiel, ce qui "rend" très bien les caractéristiques de la chose, et notamment l'aspect "référence" que constitue cet élément du système de controle de versions (alors qu'un dépôt a l'inconvénient d'être dans son sens plus statique, moins "intelligent", notamment par rapport au mécanisme de mise à jour avec fusion effectué à partir de cet élément).

      Pour commit, je proposerais du coup "envoyer", mais il est vrai que "valider" reste pas mal. Ceci dit, je ne suis pas sûr qu'il y ait tellement d'équivalents français pour le terme, et il serait peut etre sage à ce niveau de faire un enrichissement de la langue française, ce qui permettrait de discuter plus avant sur les bienfaits du commit de situation ou de répétition.