URL: https://linuxfr.org/news/sortie-de-darcs-2-8 Title: Sortie de darcs 2.8 Authors: galbolle geh, Nÿco, Nils Ratusznik, claudex et tuiu pol Date: 2012年04月25日T15:34:02+02:00 License: CC By-SA Tags: Score: 27 La dernière version de darcs, système de gestion de version intelligent et simple d'utilisation, est disponible depuis le 23 avril dernier. Il s'agit de la tant attendue version 2.8. Par rapport à git ou mercurial, darcs est plus simple d'utilisation, mais sur de gros dépôts, il peut souffrir de problèmes de performances. C'est grâce à sa théorie des patches, une vision différente des concepts de la gestion de version, qu'il peut proposer un mode de travail plus libre, et une interface plus simple. ---- [Site officiel](http://www.darcs.net/) [Annonce de la version 2.8](http://wiki.darcs.net/Releases/2.8) ---- Concrètement, les différences avec les gestionnaires de versions décentralisés « classiques » comme git, mercurial ou bazaar sont les suivantes : * Une représentation sémantique et non chronologique des changements ; * Une gestion intégrée du picorage (*cherry-picking*) des changements ; * Une interface interactive par défaut uniforme pour toutes les commandes. Les nouveautés de la version 2.8 sont principalement : * Optimisation de la commande `annotate` et simplification de son format de sortie (`annotate` est l'équivalent de `git blame` et permet, pour chaque ligne, d'afficher le commit qui l'a modifié) ; * La commande `obliterate -O` permet de supprimer un patch du dépôt tout en le stockant dans un fichier ; * L'interface de `revert` permet d'éditer chaque bloc de texte à défaire (permettant par exemple de défaire, parmi deux lignes contiguës, seulement l'une d'elles). En détail, on trouve aussi les changements suivants : * La possibilité d'enlever des changements d'un patch enregistré mais non diffusé (amend-record --unrecord) ; * La possibilité d'enregistrer un patch malgré des tests qui échouent ; * La possibilité de créer des dépôts sans répertoire de travail (pour un dépôt miroir ou consacré à la diffusion de changements) ; * Les commandes record, unrecord, revert et unrevert affichent les changements comme `diff --unified` (par `darcs record --unified`) ; * La commande `darcs test` permet de lancer les tests définis pour `darcs record` ; * La commande `darcs rollback` permet maintenant d'annuler des changements anciens sans enregistrer directement de nouveau patch, par `darcs rollback --no-record` ; * Prise en charge de [GHC](http://en.wikipedia.org/wiki/Glasgow_Haskell_Compiler) 7.4.