Journal Revision Control Systems

Posté par  (site web personnel) .
Étiquettes : aucune
0
16
déc.
2002
... ou programmes de gestion de version.

Je cherche actuellement de tels programmes a tester, de preference libres. J'ai deja trouve:
- CVS (bien, trop? connu)
- Subversion
- arch
- les antiquites RCS etc etc.

Dans les pas libres mais free(as in in beer):
- Bitkeeper

Dans les "je sais pas trop ou le classer" (ce soft tiens plus du programme d'aide a la gestion/accomplissment du process d'elaboration de software):
- Aegis

Actuellement je teste Arch qui me semble bien different de ce que je connaissais (CVS). Arch apporte pas mal de choses que CVS est loin d'offrir. Seul contre coup, on y perd ses reperes... je vous laisse imaginer les possibilites d'utilisation quand on peut:
- Utiliser des repository distribues (pas vraiment un serveur et X copies de travail)
- creer des branches en local a partir de son propre repository clone sans jamais influer sur le repository source primaire.
- classiques add, move, delete (le move fait cruellement defaut a CVS)
- commit atomique
- ChangeLog Automatique (leur gestion est bien differente et poussent les devs a 1-creer une branche 2-rajouter une feature complete 3-merger avec le trunk, alors que CVS c'est un peu plus j'apporte des petites touches partout - avis/experience perso)
- differentes commandes afin d'aider le dev a trouver la meilleure sequence de merge pour subir qu'un nombre de conflits minimum
- ... bien d'autres

A l'utilisation, on finit par se dire qu'arch a une logique bien a lui mais tout a fait coherente. Seul regret c'est un peu lent ama et ne fonctionne que sur systeme POSIX (a moins qu'une bonne ame reimplemente arch en C au lieu de shell scripts appelant awk/sed/patch/diff/...). Pour nous GNU/linuxiens ca change rien, mais je pense que ca peut etre tres genantpour les projets ayant un port windows.

Je souhaiterais avoir des retours d'experiences sur subversion, voir bitkeeper pour qu'a plusieurs on puisse pondre un bon article solide, examples a l'appui, explicitant les limitations de chaque RCS, les points forts/faibles puis la classique comparaison X vs Y en termes de fonctionnalites.

Je pense qu'il est temps que CVS passe le relai a quelque chose qui contraint moins les devs (ma facon de programmer s'est adapte aux features/defauts de CVS...)

PS: si j'ai oublier un RCS dans la liste, postes le en commentaire avec un lien stp :-)

--
Edouard Gomez
  • # Re: Revision Control Systems

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

    J'ai oublie les liens pour les courageux

    CVS: (dans la distro) sinon ici http://www.cvshome.org/(...)
    Arch: http://www.fifthvision.net/open/bin/view/Arch/(...)
    Subversion: http://subversion.tigris.org/(...)

    --
    Edouard Gomez
    "2002-12-16 LinuxFR :: Tiens y a pu de bouchot"
  • # Re: Revision Control Systems

    Posté par  . Évalué à 1.

    Dans la categorie vraiment pas libre :
    Omniworks.
    Un poil identique a CVS.

    Sinon ya les systeme de fichier "CVS" :
    ClearCase ..Reiserfs 4

    et les trucs windows :
    SourceSafe
    • [^] # Re: Revision Control Systems

      Posté par  . Évalué à 1.

      reiserfs : http://www.namesys.com/(...)
      Omniworks : http://www.mks.com/(...) (kelkepart )
      ClearCase : http://www.rational.com/products/clearcase/index.jsp(...)
      SourceSafe : http://msdn.microsoft.com/ssafe/(...)

      perso , je pencherai pour subversion pour du dev simple .. bitkeeper pour un dev en bazaar .
      • [^] # Re: Revision Control Systems

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

        C'est exactement ce que je me disais:

        Petit projet/Faible nombre de devs => CVS ou dans un futur plus ou moins proche Subversion.

        Gros projet/Grand nombre de devs => arch (libre) ou bitkeeper.

        Projet dans un cadre Pro => CVS|SCCS|autre rcs + Aegis (c'est le resp qualite qui sera heureux de voir que chaque commit (peut) entraine(r) l'ecriture d'un test pour le dit changement, le passage en review du code implique et enfin l'integration effective de la modif au trunk)

        Sinon pour ceux qui proposent sourcesafe... dsl j'ai pas windows donc ca rentrera pas dans le cadre de mon eventuel comparatif.

        Sinon toujours pas d'experiences sur subversion ?

        Il me semble peu mature et surtout bien peu ambitieux pour la version 1.0. Je vois peu ou pas l'interet de passer a subversion en l'etat des choses actuelles.

        NB: on notera ma volonte a provoquer le debat sur la derniere phrase :-)
        • [^] # Re: Revision Control Systems

          Posté par  . Évalué à 1.

          subversion me donen l'impression d'etre le prochain CVS-like ... quand il sera fini ..
          Il a toutes les fonctionnalites que j'estime necessaire pour un developpement leger-moyen, avec de fort moyen de communication alternatifs ou peu de developpeurs principaux.

          De ce que j'en ait vu, bitekeeper peut etre utilise comme CVS ( subversion aussi cela dit en passant ). Ses avantages sont surtout dans l'atomicite des modifications, et tout les trucs de mails etc .. ( c'est ca le SCCSCSCCS ? ). Tout cela me fait dire que bitekeeper est tres bien pour les projets avec de multiples sources de developpeurs ( libres style bazaar ). Mais pour etre a fond dans la philosophie, subversion sai bien, bitekeeper sai mal.
          ( bytekeeper ? )

          connait pas arch.
          les filesystem -CVS je trouve ca comique.
          Je vais regarder Aegis ce soir .. ca a l'air sympa .
          La definition de "cadre Pro" est assez alleatoire je trouve. Niveau serieux de l'applicatif ou niveau style de developpement et methodes de travail ( XP, plus traditionnelle, grosse/petite equipe/ gros/petit logiciel )?
          • [^] # Re: Revision Control Systems

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

            C'est vrai que le terme pro etait mal choisi. Un meilleur terme aurait ete : "projet pour lequel la qualite et le respect des process d'elaboration doivent etre clairement integres a l'infrastructure de developpement".

            En gros aegis n'est pas un RCS (il le chapotte), il s'occupe cependant de toute la dev policy qu'il y a autour du projet. Aegis separe les roles de reviewers, integrateurs, developpeurs. Aegis propose un process bien precis afin que le developpement assure une continuite fonctionnelle du trunk... etc etc. Je vois bien plus aegis comme une infrastructure rigoureuse de travail que comme un RCS. les exemples dispo sur e site le montrent bien, puisque e 1er exemple utilise "RCS" comme backend RCS, le 2eme utilise Hist(que je connais mm pas de nom).

            J'ai dis "Pro" car la ou je stage, le process de dev ressemble trait pour trait a celui propose par aegis (sauf qu'ils utilisent Continuus, un gros machin de bousin - vecu). J'ai donc naturllement fait le rapprochement aegis<->dev rigoureux<->dev pro

            le deuxieme <-> n'est ni reciproque ni certain dans aucun des 2 sens :-)
      • [^] # Re: Revision Control Systems

        Posté par  . Évalué à 1.

        Subversion, de l'avis même de ces auteurs, ne doit pas être utilisé en production.

        Quand aux logiciels propriétaires, je n'en dirais rien, il est très évident à mes yeux qu'on ne fait pas du libre en s'inféodant au propriétaire.
    • [^] # Re: Revision Control Systems

      Posté par  . Évalué à 2.

      Encore un pas libre :
      Perforce http://www.perforce.com/(...)

      Avec un licensing spécial pour les dévelopements en open-source : http://www.perforce.com/perforce/price.html#opensource(...)
  • # Re: Revision Control Systems

    Posté par  . Évalué à 1.

    Et WebDAV ? Ca n'a rien à voir ?
    • [^] # Re: Revision Control Systems

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

      Non WebDav est un protocole d'échange de fichiers à travers HTTP : c'est supporté par défaut dans Wintruc 2000 je crois.

      C'est le protocole retenu par Subversion pour échanger les fichiers et c'est pour cela que le serveur Subversion a besoin d'Apache (HTTP) et de mod_webdav.

Suivre le flux des commentaires

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