La voix du libre

Émission de radio sur le Web et les logiciels libres

"La voix du libre" est une émission sur les logiciels libres maintenant diffusée sous forme de baladodiffusion (podcast) enregistrée le 2e mercredi de chaque mois (re)commançant le 11 décembre 2013 (Québec - Canada).
Vous pouvez nous écouter en direct ou en différé, via notre baladodiffusion

Nouvelle du 20 février 2012

Gestion de versions Fossil, une forge pour DVCS

Gestion de versions

Fossil est le système de fichiers de Plan9. Ce n'est pas le sujet de cete dépêche.

Fossil c'est aussi un outil de gestion de version décentralisé, DCVS en court. Il est toujours un peu osé, par les temps qui courent, de parler d'un autre DCVS que le très apprécié Git, mais Fossil c'est aussi un peu plus que ça ; un plus qui m'a beaucoup séduit.

Fossil c'est aussi un wiki, un outil de gestion de tickets et une interface Web (et son serveur) dans un seul exécutable. Sans entrer dans les détails, il prend en charge les mêmes fonctionnalités que la plus grande partie des DCVS. Il se veut robuste et fiable, simple, un protocole réseau simple (HTTP) rendu suffisamment efficace pour fonctionner sur une ligne téléphonique 56k et facile d'utilisation (pas de configuration, commande simple). Ça c'est la partie "marketing".

Si la description sonne un peu comme celle de SQLite, ce n'est pas un hasard : Fossil est développé par les mêmes personnes, utilise SQLite pour le stockage et est utilisé comme gestionnaire de versions pour ce projet (et d'autres). Fossil n'est donc pas juste un projet sombre dans un coin du Net.

NdM : merci à Etienne Bagnoud pour son journal.

 

Ce qui m'a séduit c'est d'avoir tout cet attirail de fonctionnalités dans un exécutable de ~800 Kio. Depuis quelques temps, je n'utilise plus qu'un netbook dont le seul critère est l'autonomie. Il y a aussi que je n'ai plus de connexion Internet à mon domicile, mais un abonnement de téléphonie mobile avec données illimitées (limitation de la bande passante à partir de 12 Go/mois). Je recherche donc des outils utilisant un minimum Internet, légers et accessibles sur demande. Fossil est cet outil. Pas besoin de serveur Apache, ou autre, tournant sur ma machine, peu puissante, pour écrire dans un wiki et un système de tickets. Pas besoin d'accès Internet non plus. Un simple fossil ui nom_du_depot et mon navigateur s'ouvre automatiquement sur le wiki et la gestion de ticket du projet. Ctrl-C et tout s'arrête.

Le dépôt, un seul fichier SQLite. Je le copie autre part et j'ai mon projet, avec toutes ses versions, le wiki et les tickets : la sauvegarde est simplifiée.

 

Pour la partie distribuée de l'outil, je n'ai pas encore testé. Mais les fonctionnalités sont là, Fossil peut tourner en CGI dans un serveur Web plus complet ou fournir son propre serveur (et peu être utilisé depuis inetd). Il a les fonctionnalités "push", "pull", "clone" et "update", mais peut aussi fonctionner en synchronisation automatique, comme un CVS ou un SVN.

Bien entendu, il gère l'importation et l'exportation vers Git, sa prise en main est immédiate (incomparable par rapport à Git) et il y a une gestion d'utilisateurs et de droits très bien faite et complète.

Sur la page de comparaison entre Fossil et GIT, on y trouve la phrase suivante :

The Git model works best for large projects, like the Linux kernel for which Git was designed.

"Le modèle Git est idéal pour des grands projet, comme le noyau Linux pour lequel il a été conçu".

Fossil a vraiment été conçu pour un développeur seul ou une petite équipe ne voulant pas se prendre la tête avec l'administration d'un serveur complet pour héberger trois outils simples (wiki, ticket et DCVS). Et dans ce domaine, Fossil semble vraiment être un réussite.

Je pense que ce projet peut en intéresser plus d'un, je vous invite donc à l'essayer (surtout que sa simplicité déconcertante invite vraiment à le tester).