Ziirish's Home :: Blog

Ziirish's Pub

 
 

Longtemps j'ai voulu utiliser git en tant que gestionnaire de version. Parce que git, ça a été écrit pas un barbu de chez barbu... Le même qui nous a pondu un noyau dénommé Linux ! Mais aussi parce que ça a l'air fun et que beaucoup de monde l'utilise.

Malheureusement, à l'époque j'avais pas encore de poils au menton, et donc je ne m'y suis jamais mis. Puis la puberté est passée par-là, et je me suis retrouvé en stage de développement sur un petit (ahem) projet de 5 ans utilisant donc très joyeusement un gestionnaire de version (VCS pour les intimes). Manque de bol, il s'agissait de SVN parce que le projet était en Java, et que SVN est pas trop mal intégré à Eclipse.

Puis en fait, avant ce stage, j'avais déjà commencé à contribuer à une projet OpenSource qui utilisait SVN, puis j'avais poussé CID sur un SVN également... Sur une forge plus précisément, ce qui m'évita de me prendre la tête (à l'époque) avec l'administration ^_^

Du coup, j'avais que du SVN autour de moi. Puis la puberté est passée par-là, et j'ai eu envie d'administrer moi-même mes dépôts (just for fun). Naturellement, j'ai commencé par la simplicité en migrant mon SVN existant sur mon serveur (cf. cet article). puis dernièrement, j'ai eu envie de revenir à GIT, tout en conservant mon historique. C'est là que git-svn intervient.


$ mkdir projet_tmp
$ cat >users.txt<<EOF
toto = Jean Lewis <jean@lewis.org>
titi = Anne Poney <anne@cheval.org>
EOF
$ cd projet_tmp
$ git svn init http://svn.domaine/projet --no-metadata
$ git config svn.authorsfile ../users.txt
$ git svn fetch

On commence donc par créer l'arborescence de notre dépôt, on fait la liste (à la main) des users qu'on avait sur le SVN. On récupère le SVN sur GIT sans les meta-data. On intègre à GIT nos users. Puis on fetch.

Et pour finir, on range tout :


$ git clone projet_tmp projet

On a un GIT tout propre :)