* Clarification on the git+ssh and ssh+git schemes @ 2016-02-05 17:33 Carlos Martín Nieto 2016-02-05 19:30 ` Jeff King 0 siblings, 1 reply; 5+ messages in thread From: Carlos Martín Nieto @ 2016-02-05 17:33 UTC (permalink / raw) To: git Hello gits, git supports using git+ssh:// and ssh+git:// instead of ssh:// or the rsync-style format. The first two are however not documented in the git-clone manage as acceptable protocols (which is what I think of as the canonical source for what you can use). There are tests to make sure these are supported, but even the commit that allows for this (c05186cc; Support git+ssh:// and ssh+git:// URL) makes it pretty clear it’s not something that’s considered sensible. But in either case, if we’re going to support it, it should be documented. If we don’t want to support it, then we should delete the references to these formats along with the tests for this. I’m happy to write a patch going in either direction, but I’d like some input from the community as to what we want to do. Cheers, cmn ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Clarification on the git+ssh and ssh+git schemes 2016-02-05 17:33 Clarification on the git+ssh and ssh+git schemes Carlos Martín Nieto @ 2016-02-05 19:30 ` Jeff King 2016-02-05 19:36 ` Linus Torvalds 0 siblings, 1 reply; 5+ messages in thread From: Jeff King @ 2016-02-05 19:30 UTC (permalink / raw) To: Carlos Martín Nieto; +Cc: git On Fri, Feb 05, 2016 at 09:33:06AM -0800, Carlos Martín Nieto wrote: > git supports using git+ssh:// and ssh+git:// instead of ssh:// or the > rsync-style format. The first two are however not documented in the > git-clone manage as acceptable protocols (which is what I think of as > the canonical source for what you can use). There are tests to make > sure these are supported, but even the commit that allows for this > (c05186cc; Support git+ssh:// and ssh+git:// URL) makes it pretty > clear it’s not something that’s considered sensible. Hrm. I tried to find more discussion on the list, but I couldn't find any mention of git+ssh, nor of that patch. I wonder if there is a hole in my archive, or if they were done off-list for some reason. Anyway... > But in either case, if we’re going to support it, it should be > documented. If we don’t want to support it, then we should delete the > references to these formats along with the tests for this. Whether they are stupid or not (and I agree that they are), we cannot just rip them out now without warning. And given that they are probably not costing us a lot in maintenance burden to keep, I'd guess it is less effort to simply leave them in place. I suspect they were not really documented because nobody wanted to encourage their use. I don't think it would be wrong to document that they exist and are deprecated, though. > I’m happy to write a patch going in either direction, but I’d like > some input from the community as to what we want to do. I imagine your ulterior motive is also figuring out whether libgit2 needs to support them? -Peff ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Clarification on the git+ssh and ssh+git schemes 2016-02-05 19:30 ` Jeff King @ 2016-02-05 19:36 ` Linus Torvalds 2016-02-05 22:11 ` Junio C Hamano 0 siblings, 1 reply; 5+ messages in thread From: Linus Torvalds @ 2016-02-05 19:36 UTC (permalink / raw) To: Jeff King; +Cc: Carlos Martín Nieto, Git Mailing List On Fri, Feb 5, 2016 at 11:30 AM, Jeff King <peff@peff.net> wrote: > > I suspect they were not really documented because nobody wanted to > encourage their use. I don't think it would be wrong to document that > they exist and are deprecated, though. They exist because some people seemed to think that people shouldn't use "ssh://" since they thought that only ssh should use that. Which is obviously bullshit, since by that logic all the other formats should have that idiotic "git+" format too ("git+https", anybody?). It doesn't actually help anything, and it only pushes somebodys broken agenda. So there was a push for that silly thing by a couple of people, but it was always wrong. Don't even document it. Leave it in the source code as an option, and maybe add a comment about "This is stupid, but we support it for hysterical raisins". Don't add it to any real documentation. Not even as deprecated. That just validates it further. Linus ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Clarification on the git+ssh and ssh+git schemes 2016-02-05 19:36 ` Linus Torvalds @ 2016-02-05 22:11 ` Junio C Hamano 2016-02-05 23:59 ` Carlos Martín Nieto 0 siblings, 1 reply; 5+ messages in thread From: Junio C Hamano @ 2016-02-05 22:11 UTC (permalink / raw) To: Linus Torvalds; +Cc: Jeff King, Carlos Martín Nieto, Git Mailing List Linus Torvalds <torvalds@linux-foundation.org> writes: > On Fri, Feb 5, 2016 at 11:30 AM, Jeff King <peff@peff.net> wrote: >> >> I suspect they were not really documented because nobody wanted to >> encourage their use. I don't think it would be wrong to document that >> they exist and are deprecated, though. > > They exist because some people seemed to think that people shouldn't > use "ssh://" since they thought that only ssh should use that. > > Which is obviously bullshit, since by that logic all the other formats > should have that idiotic "git+" format too ("git+https", anybody?). It > doesn't actually help anything, and it only pushes somebodys broken > agenda. > > So there was a push for that silly thing by a couple of people, but it > was always wrong. Don't even document it. "git+https://" is actually an interesting thing to think about. Those who argued that "ssh://" should only be used by ssh would say for the same reason that "http://" is OK only when Git is using the old "commit walker" aka "dumb" HTTP transport, and the modern "Git protocol over HTTP" aka "smart" HTTP should not use "http://". Which is a problematic stance to take. It would force inconvenience on our users, especially when the server side support for the modern "Git over HTTP" is done in such a way that it can co-exist with the commit walker transport. So in that sense, "git+https://" does not help anybody. I however wouldn't use such strong words like you did ;-) - If we see "hg+http://" or "svn+http://" URL, that would help people to immediately know that "git clone" would not work against them, so for us who live in Git world, "git+http:// does not buy anything (assuming that we know better than assuming all "http://" are clonable, e.g. "git clone http://nytimes.com"), it would help if others marked their non-Git URL as such. - During technical discussion inside Git circle when we need to differentiate the "smart" and "dump" HTTP transports, it may help to be able to say "git+http://" and "http://". And people who heard such a conversation may be tempted to say "git+http://" to talk to a Git repository that is known to talk the "smart HTTP" protocol. Devil's advocate mode off. > Leave it in the source code as an option, and maybe add a comment > about "This is stupid, but we support it for hysterical raisins". Sounds good. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Clarification on the git+ssh and ssh+git schemes 2016-02-05 22:11 ` Junio C Hamano @ 2016-02-05 23:59 ` Carlos Martín Nieto 0 siblings, 0 replies; 5+ messages in thread From: Carlos Martín Nieto @ 2016-02-05 23:59 UTC (permalink / raw) To: Junio C Hamano; +Cc: Linus Torvalds, Jeff King, Git Mailing List > On 05 Feb 2016, at 14:11, Junio C Hamano <gitster@pobox.com> wrote: > > Linus Torvalds <torvalds@linux-foundation.org> writes: > >> On Fri, Feb 5, 2016 at 11:30 AM, Jeff King <peff@peff.net> wrote: >>> >>> I suspect they were not really documented because nobody wanted to >>> encourage their use. I don't think it would be wrong to document that >>> they exist and are deprecated, though. >> >> They exist because some people seemed to think that people shouldn't >> use "ssh://" since they thought that only ssh should use that. >> >> Which is obviously bullshit, since by that logic all the other formats >> should have that idiotic "git+" format too ("git+https", anybody?). It >> doesn't actually help anything, and it only pushes somebodys broken >> agenda. >> >> So there was a push for that silly thing by a couple of people, but it >> was always wrong. Don't even document it. > > […] > >> Leave it in the source code as an option, and maybe add a comment >> about "This is stupid, but we support it for hysterical raisins". > > Sounds good. OK then, let’s remove the reference from the manpage. As peff guessed, this query is indeed triggered by having to make a decision about whether libgit2 should support them. I suppose we’ll have to go in a similar direction. Support them because people are using them (which is why a user brought it up) but leave a comment that we don’t like it. Cheers, can ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-02-06 0:00 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-02-05 17:33 Clarification on the git+ssh and ssh+git schemes Carlos Martín Nieto 2016-02-05 19:30 ` Jeff King 2016-02-05 19:36 ` Linus Torvalds 2016-02-05 22:11 ` Junio C Hamano 2016-02-05 23:59 ` Carlos Martín Nieto
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).