Re: remote#branch

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Linus Torvalds <torvalds@...>
Cc: Jan Hudec <bulb@...>, Johannes Schindelin <Johannes.Schindelin@...>, Petr Baudis <pasky@...>, Paolo Ciarrocchi <paolo.ciarrocchi@...>, <git@...>
Date: Monday, October 29, 2007 - 5:49 pm

On Mon, Oct 29, 2007 at 11:17:12AM -0700, Linus Torvalds wrote:

Well, the confusion is that we refer to things that look like
"git://git.kernel.org/pub/scm/git/git.git" as if it were a URL.  In
fact, you did so yourself in the last paragraph above.  "People who
think that git URL's"....  but in fact, whether or not Universal
Resource Locators (URL's) in the RFC 3986 sense requires quoting
doesn't matter whether or not they are web pages or not.  If they are
formal URL's in the sense of RFC 3986, it doesn't matter whether they
are http URL's, or ldap URL's, or telephone URL's, etc. they are
supposed to be quoted whether or not they appear in a web form or not.
The whole point of URL's is that they are *uniform*.

So what that means is the much more correct statement is:

"People who think the names that people specify that to git, which
sometimes include names that look very much like URL's, especially
when they begin 'git://' or 'http://', and they think they are really
RFC 3986 URL's had better wake up and smell the coffee.  They aren't.
They never were.  The they never *should* be.  

The best that we can say given existing usage is that what git accepts
is a superset of what is allowable by RFC 3986 syntactically, and that
git in general doesn't do any URL-style quoting, even when given a
name that looks syntactically like a http-style URL that begins
'http://'."

What this means in practice though is that people would be well
advised not to pick locator names (NOT URL's) that contain characters
that normally would require escaping by RFC 3986 rules, since the
inconsistency of whether tools that expect URL-style quoting rules
will probably cause user and tools confusion.  Hence, it would
probably be a bad idea to place a directory pathname that included the
'#' character on a web server and expect that resulting git:// and
http:// names generated by an Apache web server and gitweb scripts to
do sane things, not to mention direct access via git:// names used
when you do a "git push" to said respository.  Sometimes the name will
require RFC 3968 quoting, and sometimes it may not be quoted using RFC
3968 rules, depending on which tool you are using.

I do agree that the Cogito '#' notation makes things worse, not
better, because it encourages a bigger separation between the RFC 3986
rules, and what the git tool accepts in practice --- which are not
URL's, no matter how much some of our git-style names superficially
look like URL's.   

							- Ted
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH] Git homepage: remove all the references to Cogito, Paolo Ciarrocchi, (Mon Oct 15, 5:38 pm)
Re: [PATCH] Git homepage: remove all the references to Cogito, Paolo Ciarrocchi, (Tue Oct 16, 4:01 am)
Re: [PATCH] gitweb: Speed up get_projects_list for large sou..., Andreas Ericsson, (Tue Oct 16, 12:55 pm)
cogito and remote#branch, was Re: [PATCH] Git homepage: remo..., Johannes Schindelin, (Tue Oct 16, 6:49 am)
Re: remote#branch, Jan Hudec, (Tue Oct 16, 5:09 pm)
Re: remote#branch, Johannes Schindelin, (Tue Oct 16, 5:35 pm)
Re: remote#branch, Jan Hudec, (Sat Oct 27, 4:47 pm)
Re: remote#branch, Johannes Schindelin, (Sat Oct 27, 7:01 pm)
Re: remote#branch, Jan Hudec, (Mon Oct 29, 1:40 pm)
Re: remote#branch, Johannes Schindelin, (Mon Oct 29, 2:32 pm)
Re: remote#branch, Linus Torvalds, (Mon Oct 29, 2:17 pm)
Re: remote#branch, Theodore Tso, (Mon Oct 29, 5:49 pm)
Re: remote#branch, Linus Torvalds, (Mon Oct 29, 6:57 pm)
Re: remote#branch, Johannes Schindelin, (Mon Oct 29, 7:49 pm)
Re: remote#branch, Theodore Tso, (Mon Oct 29, 11:01 pm)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 12:50 am)
Re: remote#branch, Junio C Hamano, (Mon Oct 29, 11:40 pm)
Re: remote#branch, Theodore Tso, (Tue Oct 30, 12:40 am)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 12:51 am)
Re: remote#branch, Martin Langhoff, (Tue Oct 30, 8:41 pm)
Re: remote#branch, Jeff King, (Tue Oct 30, 9:43 pm)
Re: remote#branch, Johannes Schindelin, (Tue Oct 30, 11:08 pm)
Re: remote#branch, Martin Langhoff, (Tue Oct 30, 9:49 pm)
Re: remote#branch, Jeff King, (Tue Oct 30, 9:59 pm)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 8:59 pm)
Re: remote#branch, Johannes Schindelin, (Tue Oct 30, 6:02 am)
Re: remote#branch, Tom Prince, (Tue Oct 30, 1:37 am)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 10:59 am)
Re: remote#branch, Jan Hudec, (Tue Oct 30, 3:36 pm)
Re: remote#branch, Erik Warendorph, (Wed Oct 31, 3:29 pm)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 3:53 pm)
Re: remote#branch, Tom Prince, (Tue Oct 30, 12:02 pm)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 1:39 pm)
Re: remote#branch, Matthieu Moy, (Tue Oct 30, 1:49 pm)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 1:58 pm)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 2:19 pm)
Re: remote#branch, Pascal Obry, (Tue Oct 30, 3:18 pm)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 3:38 pm)
Re: remote#branch, Jeff King, (Tue Oct 30, 7:58 pm)
Re: remote#branch, Petr Baudis, (Wed Oct 31, 1:13 pm)
Re: remote#branch, David Kastrup, (Wed Oct 31, 2:39 am)
Re: remote#branch, Pascal Obry, (Wed Oct 31, 5:34 am)
Re: remote#branch, Robin Rosenberg, (Wed Oct 31, 4:25 am)
Re: remote#branch, Wincent Colaiuta, (Wed Oct 31, 4:16 am)
Re: remote#branch, Randal L. Schwartz, (Tue Oct 30, 4:15 pm)
Re: remote#branch, Nicolas Pitre, (Tue Oct 30, 4:36 pm)
Re: remote#branch, Linus Torvalds, (Tue Oct 30, 4:30 pm)
Re: remote#branch, Pascal Obry, (Tue Oct 30, 3:15 pm)