Sharing repository through a read-only web server

Ben Gerdemann gname at ibeni.net
Mon Nov 12 14:49:57 GMT 2007


I've created a shared repository on my local disk and now I want to share it
through a http server. I don't have ftp/sftp access to the server, so I just
copied the repository files directly. The problem is that when I try to checkout
the repository through the http server, bzr is looking for files that don't
exist. When I checkout the same repository locally everything is fine. What am I
doing wrong?

bzr init-repo /var/bzr-repo
bzr init /var/bzr-repo/dev

bzr co --lightweight /var/bzr-repo/dev
cd dev
bzr add
bzr commit

# Test local checkout and everything is fine
cd /tmp
bzr co --lightweight /var/bzr-repo/dev

# but same checkout through webserver doesn't work
cp -R /var/bzr-repo /web/server/dir
bzr co --lightweight http://myserver/bzr-repo/dev
bzr: ERROR: Transport error: Server refuses to fullfil the request for:
http://myserver/bzr-repo/home/.bzr/repository/format

The webserver is serving the files correctly, but there is no directory
bzr-repo/home/.bzr/repository in the repository. Why is bzr looking for this
directory and file and why does this checkout work fine from the same repository
when it is not accessed through the http server?

Here's a directory tree of /var/bzr-repo

„Ÿ.bzr
„   „Ÿbranch-lock
„   „Ÿrepository
„       „Ÿknits
„       „   „Ÿ00
„       „   „Ÿ01
          ......
„       „lock
„       „Ÿrevision-store
„Ÿhome
    „Ÿ.bzr
        „Ÿbranch
        „   „Ÿlock
        „Ÿbranch-lock
        „Ÿcheckout
            „Ÿlock

Cheers,
Ben




More information about the bazaar mailing list