A. S. Budden
abudden at gmail.com
Thu Jan 22 18:52:23 GMT 2009
Having (sort of: see the other thread on the topic) converted my
subversion repository to bazaar, I have been investigating it with a
view to switching at some point in the near future (I'm currently
still using subversion for active development but am taking notes on
what I've done so far). I have come across a number of positives and
points of confusion, so I thought I would jot these down in this email
in the hope that I can encourage people by way of the positives and
get some answers to the points of confusion!
First of all, it should be emphasised that I've been a fairly happy
(solo, but multiple computer and operating system) subversion user for
a while and it is due to a couple of simple reasons that I am
1) Merging in subversion is a pain
2) I like the capability to work offline (and still commit) when
working with a bazaar repository.
I am very keen on the idea of having a central repository (apart from
anything else, it's easier to back up), so the closest model in the
Bazaar User Guide would probably be 5.1: Centralised Development.
Most of the timer, I will be working on a single working copy, but
committing to a shared repository containing all of the various
projects I work on. I really like the flexibility that bazaar seems
to offer: distributed branches when desired, but centralised
development when more appropriate.
The main problem that I have had so far (apart from those discussed in
the repository conversion thread) is regarding browsing a shared
repository: I have a repository on a server that is being 'served'
with "bzr serve --directory=/path/to/repo". On the computer used for
making modifications (we'll assume no security for simplicity), I want
to checkout a project. I can't remember where it is. In subversion,
I would do:
$ svn ls svn://servername/
$ svn ls svn://servername/applications/
$ svn ls svn://servername/applications/vim/
$ svn co svn://servername/applications/vim/vimfiles/
(In practice, I can probably remember a few bits).
On bazaar, I do:
$ bzr ls bzr://servername/
bzr: ERROR: Not a branch: "bzr://servername/".
Bother. I know it's not a branch, but how do I find the branches?!
$ bzr co bzr://servername/applications/vim/vimfiles/
This still works!
Also, if I use "bzr ls" on bzr://servername/applications/vim/vimfiles,
I get a (rather unmanageable) recursive file listing. If I add the
--non-recursive option, I get nothing at all. I can get round this
with something like:
bzr ls bzr://localhost/applications/vim/vimfiles/ | grep
but surely this shouldn't be necessary?! It also doesn't distinguish
files and directories (no '/' on the end of directories). I realise
that it can be done with the apache server option or by connecting to
the server with ssh/sftp and browsing the file system, but this seems
a little indirect and it is strange that the server has an 'ls'
command but doesn't really support browsing. Am I missing something?
Many thanks in advance for any suggestions you might have.
More information about the bazaar