Repository Reference Rollup (was Re: Repository referencing in command lines)
Vincent LADEUIL
v.ladeuil at alplog.fr
Tue Feb 14 08:46:52 GMT 2006
>>>>> "Denys" == Denys Duchier <duchier at ps.uni-sb.de> writes:
Denys> Vincent LADEUIL <v.ladeuil at alplog.fr> writes: I don't
Denys> get where repo:<repo_url>:<branch_name> is any
Denys> different from <repo_url>/<branch_name>
>> 8-/ Because both <repo_url> and <branch_name> can contain
>> '/' ? Because ':' can disambiguate in that case (and make
>> things clearer for both user and the programmer ) ?
Denys> To disambiguate, you'd need an ambiguity.
1) Repo: foo/bar, Branch: baz/qux
2) Repo: foo, Branch: bar/baz/qux
leads to:
foo/bar/baz/qux is either 1 or 2
foo/bar:baz/qux is 1
foo:bar/baz/qux is 2
But maybe I don't understand the allowed syntax for repo and
branch :-/
Denys> The only ambiguity I can think of would be when you
Denys> have nested repos: <repo1>/A/<repo2> and you want to
Denys> create a new branch below <repo1>/A/<repo2> but with
Denys> storage in <repo1>. I hardly think we need to devise
Denys> new syntax just for this unlikely case (that quite
Denys> possibly won't be supported anyway).
>> And easy to confuse with other paths representations
>> (which you admit yourself by adding "Notice the .../
>> prefix" :) (and ::<branch_name> is also easy to type and
>> two characters shorter if you want to count :-)
Denys> I am fine with :: and I believe that ^ was also
Denys> mentioned. My only point was that only a notation to
Denys> say "figure it out" was needed, not a notation to
Denys> specify a pair (repo,branch) because we already have
Denys> repo/branch
As far as a character allowed in either repo or branch is used to
separate repo and branch, there can be ambiguity (at least in the
user mind).
And if ':' is needed in either repo or branch it should be
protected (but people are already used to protect special
characters in URLs).
hth,
Vincent
More information about the bazaar
mailing list