Page de référence : {en} QuickHackingWithBzr
Ceci est un très bref tutoriel de 5 minutes, couvrant uniquement ce qu'un utilisateur néophyte a besoin de connaître pour commencer à contribuer à un projet utilisant Bazaar-NG.
Obtenir bzr
Cf. {en} DistroDownloads, c'est probablement déjà dans votre distribution.
Présentation de bzr
Vous aimeriez votre nom et e-mail dans le log de révision.
Créez ~/.bazaar/bazaar.conf avec votre adresse e-mail :
[DEFAULT] email = Joe Doe <joe.doe@gmail.com>
Maintenant essayez :
$ bzr whoami Joe Doe <joe.doe@gmail.com>
Créer votre branche personnelle
Vous travaillez sur votre branche personnelle. Après l'avoir créé, vous n'aurez plus besoin d'accès web pour committer les changements :
$ bzr branch http://exemple.com/code/foobar.dev foobar.joe Branched 1 revision(s).
Codage
$ cd foobar.joe $ hack...
Ce que vous avez fait :
$ bzr diff
=== modified file 'foo.c'
--- foo.c
+++ foo.c
@@ -30,6 +30,7 @@
#include "foo.h"
+
static PyObject *
_pyfribidi_log2vis (PyObject * self, PyObject * args, PyObject * kw)
{Il est temps de committer le fruit de votre dur labeur :
$ bzr commit -m 'added some whitespace' Committed revision 2.
Afficher les logs de révision
$ bzr log ------------------------------------------------------------ revno: 2 committer: Joe Doe <joe.doe@gmail.com> branch nick: foobar.joe timestamp: Mon 2006-02-06 01:33:35 +0200 message: added some whitespace ------------------------------------------------------------ revno: 1 committer: James Hacker <jmh@exemple.com> branch nick: foobar.dev timestamp: Mon 2006-02-06 01:06:11 +0200 message: initial revision
Mettre à jour votre branche depuis la branche principale
Pendant que vous travaillez sur votre branche, d'autres peuvent avoir committé du nouveau code sur la branche principale. Vous aimeriez fusionner les changements depuis la branche principal vers votre branche de temps en temps :
$ bzr merge Using saved location: http://exemple.com/code/foobar.dev All changes applied successfully.
Qu'est-ce qui a été changé dans la branche principale ?
$ bzr diff
=== modified file 'pyfribidi.c'
--- pyfribidi.c
+++ pyfribidi.c
@@ -236,6 +236,7 @@
PyMem_Del (logical);
PyMem_Del (visual);
+ /* evil hack! */
return result;
}Committez les changements provenant de la branche principale :
$ bzr commit -m 'merge from main branch' Committed revision 6.
Publier votre branche
Vous pouvez simplement utiliser rsync pour copier votre branche vers un serveur web, mais utiliser bzr push est la façon la plus facile de faire. Notez que pour utiliser sftp, vous avez besoin d'installer paramiko et pyCrypto. Cf. la page {en} Installation dans le wiki anglophone.
Supposons que vous voulez publier votre branche dans jod.exemple.com/foobar.joe :
$ bzr push sftp://jod@jod.exemple.com/public_html/foobar.joe/ 2 revision(s) pushed.
Maintenant quiconque peut récupérer votre branche avec (essayez vous-même) :
bzr get http://jod.exemple.com/foobar.joe/
En apprendre plus
Pour en apprendre au sujet des sous-commandes de bzr :
$ bzr help commands
Pour en apprendre au sujet de la sous-commande toto :
$ bzr help toto
Autres ressources:
fr/IntroductionABzr - tutoriel complet, couvrant les fonctionnalités les plus utilisées
