Repository Reference Rollup (was Re: Repository referencing in command lines)

John A Meinel john at arbash-meinel.com
Sat Feb 11 19:36:16 GMT 2006


Matthew D. Fuller wrote:
> On Sat, Feb 11, 2006 at 08:33:38AM -0600 I heard the voice of

...

> 
> Giving a URL to a standalone or repository branch is always
> unambiguous.  It doesn't matter whether "http://foo.bar/baz/quux/nix"
> refers to a standalone branch at "/baz/quux/nix", a branch called
> "nix" in the repository "/baz/quux", or a branch called "quux/nix" in
> the repository at "/baz"; the metafiles available at that location
> will tell bzr everything it needs to know.  This is a "complete
> reference" (to coin a term).

So you agree that we should still support 'complete references'. I agree
that it will be nice to have some way to use complete-with-context
references.

...


> Of course, if you're specifying the full repo/branch combination, the
> URL form is probably simpler and easier.  So maybe we don't want to
> have a form that CAN specify the repo, just to be mostly used when you
> DON'T want to specify the repo.  Maybe we want to have something like
> "rbranch:branch.name" instead, and only use this special syntax when
> we're specifying just the branch name, and expecting bzr to find the
> repo.
> 
> Actually, maybe I like that better.
> 

I would probably prefer this form as well. I would even be willing to
call this "repo", so you would just do "repo:branch.name".
Though with aliases, you don't need to do any of this. As it is a simple:
^repo/branch.name
or ^repo/project/branch/version/feature
if you chose that as your namespace, but you can also alias deeper and do
^bv/feature

I really think that instead of creating a "repo:" or "rbranch:"
namespace, we can simply implement aliases. And then have some default
aliases available. So you can do:

bzr missing ^parent
bzr get ^repo/other/branch
bzr get ^parent/../other/
etc.

^repo could be defined as the local repository using your lookup rules.
^parent is the parent of this branch
etc.

Really, I think it solves your problems, and it lets us use very similar
functionality for standalone branches, repository branches, everything.

So what do you think about the idea of having aliases, along with some
context-sensitive default aliases?

John
=:->

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060211/0f61041f/attachment.pgp 


More information about the bazaar mailing list