[BZRTOOLS] checkout/repository stuff

Erik Bågfors zindar at gmail.com
Tue Mar 28 12:01:09 BST 2006


2006/3/27, Aaron Bentley <aaron.bentley at utoronto.ca>:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi all,
>
> I've added some things to bzrtools to make it nicer to work with
> checkouts and repositories.
>
> (For more info about bzrtools, see http://bazaar-vcs.org/BzrTools)
>
> The way I want to work is like this:
>
> /mnt/bzr/bzrrepo - Repository of bzr stuff
> /mnt/bzr/pfrepo  - Repository of proprietary work stuff
> ~/bzr - Bzr checkouts from ~/bzrrepo
> ~/ - Checkouts of stuff from ~/pfrepo

Are you using lightweight checkouts here?

> This has several advantages over the tree-in-repo configuration that
> Erik's patch makes possible.
>
> - - branch storage is cheap, so making branches is cheap.  Have you
> noticed I'm more prone to making branches now?

In my setup, it's cheap also, apart from the working tree (which you
can always rm -rf :) )

> - - branches do not get in the way; as soon as I'm done with a checkout, I
> can get rid of it, and the branch is retained in the repository, so I
> can check it out later, if I like.

This is what I have a central repo on a sftp server for..

> - - /mnt/bzr is on a network mount (so my colleagues can see my commits),
> but I do my development on a local drive.

Why don't you use sftp here?

> - - We can easily and efficiently back up /mnt/bzr during our daily backups
>
> - - It's cheap to push my whole bzr repo to
> http://panoramicfeedback.com/opensource/bzr/repo/
>
> BUT-- the UI could be improved a bit.  Here's what I've added:
>
> cbranch
> =======
> This command is like branch, but it makes both a [lightweight] checkout
> and a branch.  The branch goes in the repository location, and the
> checkout goes in the cwd.  This requires a little manual configuration
> in branches.conf:

Does this work over sftp? The normal bzr branch command doesn't (which
bothers me alot)

[Lot's of stuff deleted]

I certainly see the point of this, but it feels like something that
suits you very well, and most people less good.

The thing I like with working trees in the branches, is that I can
work the same way as I've always done.

Used to be like this
mkdir project
cd project
bzr branch http://host/upstream
bzr branch upstream mybranch
cd mybranch
hack hack hack
bzr push sftp://.....

Now, it's like this
bzr init-repo --trees project
cd project
bzr branch http://host/upstream
bzr branch upstream mybranch
cd mybranch
hack hack hack
bzr push sftp://.....

Also, with bound branches and a central repo, it becomes

bzr ini-repo --trees project
cd project
bzr checkout sftp://host/path/branch1
bzr checkout sftp://host/path/branch2

and the checkout shares the repository.

With this setup I can also delete everything from my local computer,
it's all in the shared central repo.

/Erik




More information about the bazaar mailing list