• # SVN c'est has been :)

    Posté par . En réponse au journal Migrer de Svn vers Bzr ?. Évalué à 10.

    Tu ne rencontres peutêtre pas toutes ces problèmatique vu ton utilisation, mais d'une manière générale :

    Pourquoi passer à autre chose que SVN ?

    - SVN n'aime pas les refactorings de répertoire. Mine de rien, c'est facilement handicapant.

    - la gestion des branches de SVN, et particulièrement les rennommages / déplacements / compléments de fichiers déplacé est minable (meme le red book SVN le dit)

    - si tu veux disons garder tes confs synchro entre 2 ordi avec quelques petites différences dedans (genre la conf spécifique à une machine), t'aura du mal avec SVN.

    - supporte mal les fichiers binaires

    Alors j'ai bien aimé Bazaar au début, mais dans le cadre dans le quel je souhaitai bosser, en cross platform, bzr était mauvais (la version Windows est bof, l'intégration des plugin doit passer par la version "python", c'est vite le bordel à gérer, notamment le plugin d'interaction avec SVN, car il faut aussi un SVN patché).

    Du coup Git est pas mal car très fourni, mais windows (et sans doute Mac aussi) reste(nt) un(^Wdes) citoyen(s) de seconde zone dessus et en dehors de l'interface fournie avec l'install(qui se cable un peu comme un "tortoisegit" dans l'explorateur), il n'y a pratiquement aucune intégration avec ce DVCS sous Windows.

    Et la j'ai decouvert Mercurial, un vrai bonheur :) plus rapide que Bazaar, très fourni en plugins, choisi par Mozilla et Sun pour gérer d'énormes soft multi-plateforme, il tourne aussi bien sous Linux que sous Windows, s'intègre autant dans l'Explorateur que dans Nautilus que dans Maven que dans Eclipse que dans Netbeans (le gros de mon développement se fait en Java et Javascript, ces IDE conviennent parfaitement), import facile et rapide d'un repo SVN en gardant l'historique, il gère aussi les delta sur les fichiers binaires (je crois que Bzr et Git aussi, mais je ne suis pas sur), et les push/pull sont étonnament rapide (moins que git parait il, mais rien à voir avec Bzr ou SVN).

    Pour un projet opensource, un DVCS c'est aussi : une facilité pour les nouveaux venu à proposer et maintenir des patch très facilement, à plusieurs même. C'est l'assurance d'avoir des merges bien foutus ( honnêtement le déplacement + renommage + ajout de contenu fonctionne super bien en merge), et de pouvoir travailler en petite équipe en marge d'un repo officiel, pour présenter par exemple un gros refactoring, ce qui au final est souvent nécessaire sur les projet, puisqu'en ce complexifiant, il faut ranger les fichiers autrement, etc.

    Pour l'hébergement, on trouve pas mal de site de repo Mercurial, personnellement j'ai fini par utiliser http://assembla.com (c'est une forge, mais pas forcément centrée que sur le développement pure et dure, c'est plutôt bien), même s'il lui manque de pouvoir disposer de plusieurs repo pour le même projet (notamment pour gérer des branches sous forme de repo plutôt qu'en interne à un repo, ce que j'aime moins). Pour Git il y a surtout le fameux GitHub, très utilisé, et pour Bazaar je ne connais pas d'autre hébergement que Launchpad.