maks blog, Hacks, fun around free software.
Subscribe to a syndicated feed of my weblog,
brought to you by the wonders of RSS.
There's more than one way to view this weblog; try these flavours on
Other blogs in our institute or friends.
Happy switch from bzr to git
Speed - This improved a bit lately but not enough for my q&d usage.
Documentation - Beside the obvious "svn-style" commands the usage of the other commands isn't obvious and the man pages lack examples. git is not perfect in that regard, but you quickly find typical usage pattern on wiki tutorials or on many google hits.
Pager - On big diff output bzr doesn't pipe that to pager^Wless. I consider that as a big usability bug.
Branches - I recently learned that a bzr repository corresponds to a git repo with just one branch. This seems strangely complicated. I really love to have different branches ready to checkout in my `pwd`. This short-coming blocks cooperation as i'm not confident enough to fetch random changes from bug reporters in my own branch.
The cardinal reason for the switch is collaboration: git scales. During my bzr usage time of the last year i observed the following shortcomings of bzr:
* Push command - Defaults on the non-obvious old sftp protocol. Worked with rsync on some very ancient version.
* Repo format - Changes on every major upgrade.
* Patchlevel - Probably for svn compat reason the chosen default patchlevel is -p0 not -p1.
Latest initramfs-tools repo is available at:
git clone git://git.debian.org/git/kernel/initramfs-tools.git
Thanks to tailor it is now possible to move from different version control systems. For git as target repository it is recommended to use latest upstream either directly via darcs or at least install the unstable version. The etch version throws strange python backtraces.