Installed Python 2.5 (which includes celementtree XML processing component) Installed bzr : http://bazaar-vcs.org/Download Installed bzrtool http://launchpad.net/bzrtools/stable/1.5.0/+download/bzrtools-1.5.0.tar.gz Bazzar Dependencies: Python module Paramiko http://www.python.org/pypi/paramiko/ http://www.lag.net/paramiko/ python -c "import paramiko" Python module pyCrypto http://www.python.org/pypi/pycrypto/ check with : python -c "import Crypto" Openssh * http://www.openssh.org/ [ The ElementTree components already exist with Python 2.5 ] cElementTree * http://effbot.org/downloads/#celementtree ElementTree http://effbot.org/downloads/#elementtree python -c "import cElementTree" Bzrtools ** BzrTools is installed as : unzip bzrtools tar.gz file mv ~/bzrtools ~/.bazaar/plugins/ bzr clean-tree -h (help for clean-tree plugin) should now work Requires baz : (only if you are merging from baz) ignore. http://code.aaronbentley.com/pybaz Install these bzr plugins : bzr branch http://bazaar.launchpad.net/~bzr-gtk/bzr-gtk/trunk ~/.bazaar/plugins/gtk ./python import sys print sys.path (prints dirs in which modules will be searched ) To install PyGTK python modules do: export PYTHON=/home/thava/linux/Python-2.5.2/python #export PYTHONPATH=lib/pythonX.Y/site-packages export PYTHONPATH=/home/thava/linux/Python-2.5.2/Lib/site-packages bzrhelp(){ } To see the list of changes for a bug fix : http://lists.mysql.com/commits/47325 Maria team lead: guilhem@mysql.com ``bzr checkout https://launchpad.net/bzr-email ~/.bazaar/plugins/email``. Get this branch: bzr branch lp:~cdleary/bzr-email/bzr-email-ssmtp SSMTP is manually enabled by putting "smtp_ssl_enabled = 1" under the appropriate heading in ~/.bazaar/locations.conf -- port 465 is assumed. What is the diff between bzr init-repo and bzr init ? bzr init-repo repo creates repository -- repo/.bzr/repository/ created bzr init proj creates project -- proj/.bzr/branch/ created How to put an existing project into bazaar ? cd my-stuff bzr init # creates .bzr for project bzr add # Adds all files in . and subdirs! bzr commit -m "Initial import" # local commits all files! Can you create project without repository created first? yes, but that is not efficient. Are there repository wide config options available ? No, there are no .conf files available at repository level. How to make bazaar ignore files? Create .bzrignore at top of project and put lines like: *.o *.tmp (one per line) How to see the list of files changed in workspace? bzr status bzr diff # with no args! It displays diff for all files changed! How to checkin locally ? bzr commit -m "local commit message" How to graphically view the history of files ? bzr qlog # from QBzr plugin bzr viz --limit=5 # from gtk plugin; Must to use! How to package release? bzr export ../releases/myproj.tar.gz What is plugin search order? Bzr will scan bzrlib/plugins and ~/.bazaar/plugins for plugins by default. You can override this with BZR_PLUGIN_PATH. Steps to configure your own repository and mail system: cd /home/thava/bzr bzr init myproj cd myproj touch myfile bzr add myfile bzr commit -m "Myfile added" branch.conf: [DEFAULT] allow_remote_options = mysql email = Thava Alagu per_file_commits = On post_commit_mailer = smtplib locations.conf: [/home/thava/bzr/myproj] post_commit_to = Thava Alagu post_commit_sender = Thava Alagu Bazaar API provided by bzrlib : http://starship.python.net/crew/mwh/bzrlibapi/bzrlib.branch.html Bzr FAQ: ======================================================================== How to list changes in a bug ? Go to bugs.mysql.com Lookup the bug. The patch and the commit mailing list threads are listed there. You can also directly search messages : lists.mysql.com/commits ======================================================================== How to list the changes in certain version ? e.g. I want to see the changes done in bug #42610 First I do: bzr log sql_plugin.cc and searched for #42610 : e.g. ------------------------------------------------------------ revno: 2497.752.1 committer: Sergey Glukhov branch nick: mysql-5.1-bugteam timestamp: Mon 2009-02-09 19:03:52 +0400 message: Bug#42610 Dynamic plugin broken in 5.1.31 added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin bzr log -v -r 2497.752.1 Gives a list of files modified in this version!!! (and -c or -r option added) What is NULL merge ? You can do: bzr merge ../other bzr revert . bzr commit -m "Fake merge of other to reject the changes" The important part is the "." which tells "bzr revert" that you want to revert the changes to the files, but leave the "I merged this other branch" flag.