====== Bazaar ======
[[http://bazaar.canonical.com/|Bazaar]] (ou ''bzr'') est un système de gestion de version décentralisé sponsorisé par [[http://www.canonical.com/|Canonical]].
Il est écrit en Python, actuellement le développement est dormant.
===== Configuration =====
Pour configurer **bazaar**, il faut définir un utilisateur, c'est recommendé pour les //commits//.
bzr whoami "John Doe "
Remplacez "John Doe" par vos identifiants réels.
===== Récupérer les sources =====
Pour récupérer les sources d'un projet, il faut utiliser la commande ''branch'' (on peut également utiliser l'//alias// ''clone'').
Si le projet est hébergé sur [[https://launchpad.net|launchpad.net]] //(dans notre exemple c'est// **project**//)//
$ bzr branch lp:project
À l'endroit où l'on a lancé cette commande, un dossier ''project/'' va être créé.
Si des mises à jour ont été faites, pour les récupérer, voici la marche à suivre.
Il faut copier la ligne qui commence par **parent branch**, et utiliser la commande ''pull'' ((Avec Mercurial (''hg'') c'est également la même chose.)).
$ cd project/
$ bzr info
Standalone tree (format: 2a)
Location:
branch root: .
Related branches:
parent branch: http://...
$ bzr pull http://...
===== L'équivalent de git format-patch =====
Pour envoyer un correctif, on peut soit utiliser la commande [[http://doc.bazaar.canonical.com/latest/en/user-reference/diff-help.html|bzr diff]], soit utiliser la commande [[http://doc.bazaar.canonical.com/latest/en/user-reference/log-help.html|bzr log]] (personnellement je préfère cette méthode, car on a toutes les informations).
bzr log -p -r45
Détaillons les opions :
* ''-p'' ou ''--show-diff'' affiche les différences
* ''-r'' ou ''--revision='' spécifie la révision à afficher
Pour créer un //patch//, il suffit de l'envoyer dans un fichier.
bzr log -p -r45 > fix-something.patch