Re: [PATCH 2/2] Add support for url aliases in config files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 20 Feb 2008, Junio C Hamano wrote:

> Daniel Barkalow <barkalow@xxxxxxxxxxxx> writes:
> 
> > On Wed, 20 Feb 2008, Junio C Hamano wrote:
> > ...
> >> To me, "url.$this_is_what_I_use.aka = $how_they_might_call_it"
> >> initially felt backwards, but the point of the facility is to
> >> allow mapping many ways other people might call it to how you
> >> would (and the other way would not make sense as allowing to map
> >> one thing to multiple is only to introduce unnecessary
> >> ambiguity), so it makes perfect sense.
> >
> > This order of values is definitely the right thing, for the mapping 
> > reasons you saw. And I think "aka" is generally used to indicate 
> > additional non-canonical names for something with an official name (see, 
> > for example, IMDB's usage). I haven't been able to come up with anything 
> > better to indicate "this is a name that I will recognize but not use 
> > myself".
> 
> Yeah, that "aka" is still disturbing.
> 
> 	[url A]
>         	aka = B
> 
> would read to me: "A is also known as B" but that is clearly not
> what it means here. 

But it is; the thing which we will call "A" is also known (and 
sometimes called by other people, or us speaking informally) as "B".

> You would want this:
> 
> 	[url A]
>         	aka = B 
> 		aka = C
> 
> to mean "B is also known as A.  C is also known as A."  IOW, you
> are using it backwards, because their name is more official and
> you are using your own unofficial name to call it.

No, "A" is the *real* name, the one that actually works. B and C are 
pseudonyms, of which there may be multiple, both from more "official" (but 
git is decentralized, and doesn't care for officialness) and less official 
sources.

I think you're seeing this feature as taking "correct" URLs and rewriting 
them to be local aliases, when the only thing that makes sense for a 
system like git is really to say that whatever URL works for us is 
"correct", and everybody else is speaking their own local dialect.

In fact, one case I anticipate using extensively is:

[url "git://iabervon.org/~barkalow/"]
	aka = ":"

Such that, once clone is using remote.{c,h}, "git clone :git" would clone 
my home git repository. Obviously ":" isn't the real name in this 
rewriting.

> >> > diff --git a/Documentation/urls.txt b/Documentation/urls.txt
> >> > index 81ac17f..0115af7 100644
> >> > --- a/Documentation/urls.txt
> >> > +++ b/Documentation/urls.txt
> >> > @@ -44,3 +44,26 @@ endif::git-clone[]
> >> > ...
> >> > +If you have a section:
> >> > +
> >> > +------------
> >> > +	[host "git://git.host.xz/"]
> >> > +		aka = host.xz:/path/to/
> >> > +		aka = work:
> >> > +------------
> >> > +
> >> > +a URL like "work:repo.git" or like "host.xz:/path/to/repo.git" will be
> >> > +rewritten in any context that takes a URL to be
> >> > +"git://git.host.xz/repo.git".
> >> 
> >> This still stands???
> >
> > And missed the "host"->"url" bit while I fixed the rest of the example. 
> 
> So this part is not wanted, right?

The first part (not quoted) is not wanted (it was left over from when I 
combined the three entries into one and moved it under 'u' instead of 
'h'). This part *is* wanted, but should say:

+	[url "git://git.host.xz/"]

instead of

+	[host "git://git.host.xz/"]

since I changed the option name.

	-Daniel
*This .sig left intentionally blank*
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux