{"thread":{"id":"41399","subject":"[PATCH] Disown ssh+git and git+ssh","startedAt":"2016-02-12T15:09:37Z","lastAt":"2016-03-24T16:56:07Z","messageCount":8,"participants":["Carlos Martín Nieto","Jeff King","Junio C Hamano","Eric Sunshine"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"278011","messageId":"1455289777-186690-1-git-send-email-cmn@dwim.me","threadId":"41399","inReplyTo":null,"subject":"[PATCH] Disown ssh+git and git+ssh","fromName":"Carlos Martín Nieto","fromEmail":"cmn@dwim.me","sentAt":"2016-02-12T15:09:37Z","receivedAt":"2016-02-12T15:09:37Z","isPatch":true,"sender":{"key":"cmn@dwim.me","avatar":"https://avatars.githubusercontent.com/u/335443?v=4"},"body":"These were silly from the beginning, but we have to support them for\ncompatibility. That doesn't mean we have to show them in the\ndocumentation. These were already left out of the main list, but a\nreference in the main manpage was left, so remove that.\n\nAlso add a note to discourage their use if anybody goes looking for them\nin the source code.\n---\n Documentation/git.txt | 2 +-\n connect.c             | 4 ++++\n transport.c           | 4 ++++\n 3 files changed, 9 insertions(+), 1 deletion(-)\n\ndiff --git a/Documentation/git.txt b/Documentation/git.txt\nindex d987ad2..2f90635 100644\n--- a/Documentation/git.txt\n+++ b/Documentation/git.txt\n@@ -1122,7 +1122,7 @@ of clones and fetches.\n \t    connection (or proxy, if configured)\n \n \t  - `ssh`: git over ssh (including `host:path` syntax,\n-\t    `git+ssh://`, etc).\n+\t    `ssh://`, etc).\n \n \t  - `rsync`: git over rsync\n \ndiff --git a/connect.c b/connect.c\nindex fd7ffe1..4f96424 100644\n--- a/connect.c\n+++ b/connect.c\n@@ -267,6 +267,10 @@ static enum protocol get_protocol(const char *name)\n \t\treturn PROTO_SSH;\n \tif (!strcmp(name, \"git\"))\n \t\treturn PROTO_GIT;\n+\t/*\n+\t * These ssh schemes remain supported for compat but are\n+\t * undocumented and their use is discouraged\n+\t */\n \tif (!strcmp(name, \"git+ssh\"))\n \t\treturn PROTO_SSH;\n \tif (!strcmp(name, \"ssh+git\"))\ndiff --git a/transport.c b/transport.c\nindex 9ae7184..f5ae707 100644\n--- a/transport.c\n+++ b/transport.c\n@@ -1002,6 +1002,10 @@ struct transport *transport_get(struct remote *remote, const char *url)\n \t\t|| starts_with(url, \"file://\")\n \t\t|| starts_with(url, \"git://\")\n \t\t|| starts_with(url, \"ssh://\")\n+\t\t/*\n+\t\t * These ssh schemes remain supported for compat but are\n+\t\t * undocumented and their use is discouraged\n+\t\t */\n \t\t|| starts_with(url, \"git+ssh://\")\n \t\t|| starts_with(url, \"ssh+git://\")) {\n \t\t/*\n-- \n2.7.0\n"},{"id":"278026","messageId":"20160212184023.GD19973@sigill.intra.peff.net","threadId":"41399","inReplyTo":"1455289777-186690-1-git-send-email-cmn@dwim.me","subject":"Re: [PATCH] Disown ssh+git and git+ssh","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2016-02-12T18:40:24Z","receivedAt":"2016-02-12T18:40:24Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Fri, Feb 12, 2016 at 04:09:37PM +0100, Carlos Martín Nieto wrote:\n\n> These were silly from the beginning, but we have to support them for\n> compatibility. That doesn't mean we have to show them in the\n> documentation. These were already left out of the main list, but a\n> reference in the main manpage was left, so remove that.\n\nYeah, that reference was added by me to try to be thorough, but I think\nmentioning ssh:// (as you do here) accomplishes the same goal in a\nbetter way.\n\n> Also add a note to discourage their use if anybody goes looking for them\n> in the source code.\n\nSounds like a good plan.\n\n> diff --git a/transport.c b/transport.c\n> index 9ae7184..f5ae707 100644\n> --- a/transport.c\n> +++ b/transport.c\n> @@ -1002,6 +1002,10 @@ struct transport *transport_get(struct remote *remote, const char *url)\n>  \t\t|| starts_with(url, \"file://\")\n>  \t\t|| starts_with(url, \"git://\")\n>  \t\t|| starts_with(url, \"ssh://\")\n> +\t\t/*\n> +\t\t * These ssh schemes remain supported for compat but are\n> +\t\t * undocumented and their use is discouraged\n> +\t\t */\n>  \t\t|| starts_with(url, \"git+ssh://\")\n>  \t\t|| starts_with(url, \"ssh+git://\")) {\n>  \t\t/*\n\nBreaking apart an ||-chain with a comment like this is a little odd, but\nI think the result is reasonably readable, so it's probably OK.\n\nThe rest of the patch is obviously correct. Thanks for following up on\nthe earlier discussion.\n\n-Peff\n"},{"id":"278088","messageId":"xmqq7fi8s4dx.fsf@gitster.mtv.corp.google.com","threadId":"41399","inReplyTo":"1455289777-186690-1-git-send-email-cmn@dwim.me","subject":"Re: [PATCH] Disown ssh+git and git+ssh","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2016-02-13T21:10:34Z","receivedAt":"2016-02-13T21:10:34Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Carlos Martín Nieto <cmn@dwim.me> writes:\n\n> These were silly from the beginning, but we have to support them for\n> compatibility. That doesn't mean we have to show them in the\n> documentation. These were already left out of the main list, but a\n> reference in the main manpage was left, so remove that.\n>\n> Also add a note to discourage their use if anybody goes looking for them\n> in the source code.\n> ---\n\nSign off?\n\n>  Documentation/git.txt | 2 +-\n>  connect.c             | 4 ++++\n>  transport.c           | 4 ++++\n>  3 files changed, 9 insertions(+), 1 deletion(-)\n>\n> diff --git a/Documentation/git.txt b/Documentation/git.txt\n> index d987ad2..2f90635 100644\n> --- a/Documentation/git.txt\n> +++ b/Documentation/git.txt\n> @@ -1122,7 +1122,7 @@ of clones and fetches.\n>  \t    connection (or proxy, if configured)\n>  \n>  \t  - `ssh`: git over ssh (including `host:path` syntax,\n> -\t    `git+ssh://`, etc).\n> +\t    `ssh://`, etc).\n>  \n>  \t  - `rsync`: git over rsync\n>  \n> diff --git a/connect.c b/connect.c\n> index fd7ffe1..4f96424 100644\n> --- a/connect.c\n> +++ b/connect.c\n> @@ -267,6 +267,10 @@ static enum protocol get_protocol(const char *name)\n>  \t\treturn PROTO_SSH;\n>  \tif (!strcmp(name, \"git\"))\n>  \t\treturn PROTO_GIT;\n> +\t/*\n> +\t * These ssh schemes remain supported for compat but are\n> +\t * undocumented and their use is discouraged\n> +\t */\n\nMicronit.\n\nIt is not like we continue to support two more different protocols;\nwe just allow users to spell the thing in different ways.\n\n\"These ssh schemes\" might be clearer if spelled \"These alternative\nways to spell the ssh scheme\".\n\n>  \t\t|| starts_with(url, \"file://\")\n>  \t\t|| starts_with(url, \"git://\")\n>  \t\t|| starts_with(url, \"ssh://\")\n> +\t\t/*\n> +\t\t * These ssh schemes remain supported for compat but are\n> +\t\t * undocumented and their use is discouraged\n> +\t\t */\n\nLikewise.\n\n>  \t\t|| starts_with(url, \"git+ssh://\")\n>  \t\t|| starts_with(url, \"ssh+git://\")) {\n>  \t\t/*\n\nThanks.\n"},{"id":"278163","messageId":"1455546546-65710-1-git-send-email-cmn@dwim.me","threadId":"41399","inReplyTo":"xmqq7fi8s4dx.fsf@gitster.mtv.corp.google.com","subject":"[PATCH] Disown ssh+git and git+ssh","fromName":"Carlos Martín Nieto","fromEmail":"cmn@dwim.me","sentAt":"2016-02-15T14:29:06Z","receivedAt":"2016-02-15T14:29:06Z","isPatch":true,"sender":{"key":"cmn@dwim.me","avatar":"https://avatars.githubusercontent.com/u/335443?v=4"},"body":"These were silly from the beginning, but we have to support them for\ncompatibility. That doesn't mean we have to show them in the\ndocumentation. These were already left out of the main list, but a\nreference in the main manpage was left, so remove that.\n\nAlso add a note to discourage their use if anybody goes looking for them\nin the source code.\n\nSigned-off-by: Carlos Martín Nieto <cmn@dwim.me>\n---\n\nI've updated the wording, so we talk about different ways of spelling\nssh rather than talking about schemes.\n\n Documentation/git.txt | 2 +-\n connect.c             | 4 ++++\n transport.c           | 4 ++++\n 3 files changed, 9 insertions(+), 1 deletion(-)\n\ndiff --git a/Documentation/git.txt b/Documentation/git.txt\nindex d987ad2..2f90635 100644\n--- a/Documentation/git.txt\n+++ b/Documentation/git.txt\n@@ -1122,7 +1122,7 @@ of clones and fetches.\n \t    connection (or proxy, if configured)\n \n \t  - `ssh`: git over ssh (including `host:path` syntax,\n-\t    `git+ssh://`, etc).\n+\t    `ssh://`, etc).\n \n \t  - `rsync`: git over rsync\n \ndiff --git a/connect.c b/connect.c\nindex fd7ffe1..d3eaa0e 100644\n--- a/connect.c\n+++ b/connect.c\n@@ -267,6 +267,10 @@ static enum protocol get_protocol(const char *name)\n \t\treturn PROTO_SSH;\n \tif (!strcmp(name, \"git\"))\n \t\treturn PROTO_GIT;\n+\t/*\n+\t * These ways to spell the ssh transport remain supported for\n+\t * compat but are undocumented and their use is discouraged\n+\t */\n \tif (!strcmp(name, \"git+ssh\"))\n \t\treturn PROTO_SSH;\n \tif (!strcmp(name, \"ssh+git\"))\ndiff --git a/transport.c b/transport.c\nindex 9ae7184..ed61e72 100644\n--- a/transport.c\n+++ b/transport.c\n@@ -1002,6 +1002,10 @@ struct transport *transport_get(struct remote *remote, const char *url)\n \t\t|| starts_with(url, \"file://\")\n \t\t|| starts_with(url, \"git://\")\n \t\t|| starts_with(url, \"ssh://\")\n+\t\t/*\n+\t\t * These ways to spell the ssh transport remain supported for\n+\t\t * compat but are undocumented and their use is discouraged\n+\t\t */\n \t\t|| starts_with(url, \"git+ssh://\")\n \t\t|| starts_with(url, \"ssh+git://\")) {\n \t\t/*\n-- \n2.7.0\n"},{"id":"278178","messageId":"CAPig+cQ6JC65QkH=8nJ9Qwghr6cwv0BsB5TRDeg=gZmDpcdcHg@mail.gmail.com","threadId":"41399","inReplyTo":"1455546546-65710-1-git-send-email-cmn@dwim.me","subject":"Re: [PATCH] Disown ssh+git and git+ssh","fromName":"Eric Sunshine","fromEmail":"sunshine@sunshineco.com","sentAt":"2016-02-15T18:16:05Z","receivedAt":"2016-02-15T18:16:05Z","isPatch":true,"sender":{"key":"sunshine@sunshineco.com","avatar":"https://avatars.githubusercontent.com/u/163641?v=4"},"body":"On Mon, Feb 15, 2016 at 9:29 AM, Carlos Martín Nieto <cmn@dwim.me> wrote:\n> These were silly from the beginning, but we have to support them for\n\nIt might be helpful to cite some reference to support the claim that\nthey are \"silly\" since it's not necessarily obvious to readers who did\nnot following the discussion.\n\nMore below...\n\n> compatibility. That doesn't mean we have to show them in the\n> documentation. These were already left out of the main list, but a\n> reference in the main manpage was left, so remove that.\n>\n> Also add a note to discourage their use if anybody goes looking for them\n> in the source code.\n>\n> Signed-off-by: Carlos Martín Nieto <cmn@dwim.me>\n> ---\n>         if (!strcmp(name, \"git\"))\n>                 return PROTO_GIT;\n> +       /*\n> +        * These ways to spell the ssh transport remain supported for\n> +        * compat but are undocumented and their use is discouraged\n> +        */\n>         if (!strcmp(name, \"git+ssh\"))\n>                 return PROTO_SSH;\n>         if (!strcmp(name, \"ssh+git\"))\n> @@ -1002,6 +1002,10 @@ struct transport *transport_get(struct remote *remote, const char *url)\n>                 || starts_with(url, \"file://\")\n>                 || starts_with(url, \"git://\")\n>                 || starts_with(url, \"ssh://\")\n> +               /*\n> +                * These ways to spell the ssh transport remain supported for\n> +                * compat but are undocumented and their use is discouraged\n> +                */\n>                 || starts_with(url, \"git+ssh://\")\n>                 || starts_with(url, \"ssh+git://\")) {\n\nA little \"comment\" bikeshedding: Aside from undesirably interrupting\nthe code flow, these large comment blocks draw far too much attention\nfrom the reader than these deprecated spellings of \"ssh\" deserve, thus\nmaking them seem overly important. How about minimizing their\nimportance by giving them minimal commentary?\n\n    || starts_with(url, \"ssh://\")\n    || starts_with(url, \"git+ssh://\") /* deprecated */\n    || starts_with(url, \"ssh+git://\") { /* deprecated */\n\nThe term \"deprecated\" should be sufficient to explain that their use\nis discouraged and why they are not documented anymore, and if a\nreader wants to know more, the commit message can be consulted for the\nfull story.\n"},{"id":"280511","messageId":"xmqqbn6ngvs8.fsf@gitster.mtv.corp.google.com","threadId":"41399","inReplyTo":"CAPig+cQ6JC65QkH=8nJ9Qwghr6cwv0BsB5TRDeg=gZmDpcdcHg@mail.gmail.com","subject":"Re: [PATCH] Disown ssh+git and git+ssh","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2016-03-09T21:56:39Z","receivedAt":"2016-03-09T21:56:39Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Eric Sunshine <sunshine@sunshineco.com> writes:\n\n> It might be helpful to cite some reference to support the claim that\n> they are \"silly\" since it's not necessarily obvious to readers who did\n> not following the discussion.\n> ...\n>>                 || starts_with(url, \"ssh://\")\n>> +               /*\n>> +                * These ways to spell the ssh transport remain supported for\n>> +                * compat but are undocumented and their use is discouraged\n>> +                */\n>>                 || starts_with(url, \"git+ssh://\")\n>>                 || starts_with(url, \"ssh+git://\")) {\n>\n> A little \"comment\" bikeshedding: Aside from undesirably interrupting\n> the code flow, these large comment blocks draw far too much attention\n> from the reader than these deprecated spellings of \"ssh\" deserve, thus\n> making them seem overly important.\n\nI've been waiting for an update for it but got tired of it.\nInstead of discarding the topic, let's amend it like so:\n\n-- >8 --\nFrom: Carlos Martín Nieto <cmn@dwim.me>\nDate: Mon, 15 Feb 2016 15:29:06 +0100\nSubject: [PATCH] Disown ssh+git and git+ssh\n\nSome people argue that these were silly from the beginning (see\nhttp://thread.gmane.org/gmane.comp.version-control.git/285590/focus=285601\nfor example), but we have to support them for compatibility.\n\nThat doesn't mean we have to show them in the documentation.  These\nwere already left out of the main list, but a reference in the main\nmanpage was left, so remove that.\n\nAlso add a note to discourage their use if anybody goes looking for them\nin the source code.\n\nSigned-off-by: Carlos Martín Nieto <cmn@dwim.me>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>\n---\n Documentation/git.txt | 2 +-\n connect.c             | 4 ++--\n transport.c           | 5 +++--\n 3 files changed, 6 insertions(+), 5 deletions(-)\n\ndiff --git a/Documentation/git.txt b/Documentation/git.txt\nindex d987ad2..2f90635 100644\n--- a/Documentation/git.txt\n+++ b/Documentation/git.txt\n@@ -1122,7 +1122,7 @@ of clones and fetches.\n \t    connection (or proxy, if configured)\n \n \t  - `ssh`: git over ssh (including `host:path` syntax,\n-\t    `git+ssh://`, etc).\n+\t    `ssh://`, etc).\n \n \t  - `rsync`: git over rsync\n \ndiff --git a/connect.c b/connect.c\nindex fd7ffe1..3babb81 100644\n--- a/connect.c\n+++ b/connect.c\n@@ -267,9 +267,9 @@ static enum protocol get_protocol(const char *name)\n \t\treturn PROTO_SSH;\n \tif (!strcmp(name, \"git\"))\n \t\treturn PROTO_GIT;\n-\tif (!strcmp(name, \"git+ssh\"))\n+\tif (!strcmp(name, \"git+ssh\")) /* deprecated - do not use */\n \t\treturn PROTO_SSH;\n-\tif (!strcmp(name, \"ssh+git\"))\n+\tif (!strcmp(name, \"ssh+git\")) /* deprecated - do not use */\n \t\treturn PROTO_SSH;\n \tif (!strcmp(name, \"file\"))\n \t\treturn PROTO_FILE;\ndiff --git a/transport.c b/transport.c\nindex 67f3666..908e08b 100644\n--- a/transport.c\n+++ b/transport.c\n@@ -1001,8 +1001,9 @@ struct transport *transport_get(struct remote *remote, const char *url)\n \t\t|| starts_with(url, \"file://\")\n \t\t|| starts_with(url, \"git://\")\n \t\t|| starts_with(url, \"ssh://\")\n-\t\t|| starts_with(url, \"git+ssh://\")\n-\t\t|| starts_with(url, \"ssh+git://\")) {\n+\t\t|| starts_with(url, \"git+ssh://\") /* deprecated - do not use */\n+\t\t|| starts_with(url, \"ssh+git://\") /* deprecated - do not use */\n+\t\t) {\n \t\t/*\n \t\t * These are builtin smart transports; \"allowed\" transports\n \t\t * will be checked individually in git_connect.\n-- \n2.8.0-rc1-142-g215006a\n"},{"id":"280571","messageId":"CAPig+cTtHFnRKUnpShQYbzfqCLW48o9FdCB=EgJ3=q2+TVLOWw@mail.gmail.com","threadId":"41399","inReplyTo":"xmqqbn6ngvs8.fsf@gitster.mtv.corp.google.com","subject":"Re: [PATCH] Disown ssh+git and git+ssh","fromName":"Eric Sunshine","fromEmail":"sunshine@sunshineco.com","sentAt":"2016-03-10T20:51:44Z","receivedAt":"2016-03-10T20:51:44Z","isPatch":true,"sender":{"key":"sunshine@sunshineco.com","avatar":"https://avatars.githubusercontent.com/u/163641?v=4"},"body":"On Wed, Mar 9, 2016 at 4:56 PM, Junio C Hamano <gitster@pobox.com> wrote:\n> Eric Sunshine <sunshine@sunshineco.com> writes:\n>> It might be helpful to cite some reference to support the claim that\n>> they are \"silly\" since it's not necessarily obvious to readers who did\n>> not following the discussion.\n>> ...\n>>>                 || starts_with(url, \"ssh://\")\n>>> +               /*\n>>> +                * These ways to spell the ssh transport remain supported for\n>>> +                * compat but are undocumented and their use is discouraged\n>>> +                */\n>>>                 || starts_with(url, \"git+ssh://\")\n>>>                 || starts_with(url, \"ssh+git://\")) {\n>>\n>> A little \"comment\" bikeshedding: Aside from undesirably interrupting\n>> the code flow, these large comment blocks draw far too much attention\n>> from the reader than these deprecated spellings of \"ssh\" deserve, thus\n>> making them seem overly important.\n>\n> I've been waiting for an update for it but got tired of it.\n> Instead of discarding the topic, let's amend it like so:\n\nMinor redundancy[1] aside, this looks good to me. Thanks.\n\n[1]: \"do not use\" is already implied by \"deprecated\"\n\n> -- >8 --\n> From: Carlos Martín Nieto <cmn@dwim.me>\n> Date: Mon, 15 Feb 2016 15:29:06 +0100\n> Subject: [PATCH] Disown ssh+git and git+ssh\n>\n> Some people argue that these were silly from the beginning (see\n> http://thread.gmane.org/gmane.comp.version-control.git/285590/focus=285601\n> for example), but we have to support them for compatibility.\n>\n> That doesn't mean we have to show them in the documentation.  These\n> were already left out of the main list, but a reference in the main\n> manpage was left, so remove that.\n>\n> Also add a note to discourage their use if anybody goes looking for them\n> in the source code.\n>\n> Signed-off-by: Carlos Martín Nieto <cmn@dwim.me>\n> Signed-off-by: Junio C Hamano <gitster@pobox.com>\n> ---\n> diff --git a/Documentation/git.txt b/Documentation/git.txt\n> index d987ad2..2f90635 100644\n> --- a/Documentation/git.txt\n> +++ b/Documentation/git.txt\n> @@ -1122,7 +1122,7 @@ of clones and fetches.\n>             connection (or proxy, if configured)\n>\n>           - `ssh`: git over ssh (including `host:path` syntax,\n> -           `git+ssh://`, etc).\n> +           `ssh://`, etc).\n>\n>           - `rsync`: git over rsync\n>\n> diff --git a/connect.c b/connect.c\n> index fd7ffe1..3babb81 100644\n> --- a/connect.c\n> +++ b/connect.c\n> @@ -267,9 +267,9 @@ static enum protocol get_protocol(const char *name)\n>                 return PROTO_SSH;\n>         if (!strcmp(name, \"git\"))\n>                 return PROTO_GIT;\n> -       if (!strcmp(name, \"git+ssh\"))\n> +       if (!strcmp(name, \"git+ssh\")) /* deprecated - do not use */\n>                 return PROTO_SSH;\n> -       if (!strcmp(name, \"ssh+git\"))\n> +       if (!strcmp(name, \"ssh+git\")) /* deprecated - do not use */\n>                 return PROTO_SSH;\n>         if (!strcmp(name, \"file\"))\n>                 return PROTO_FILE;\n> diff --git a/transport.c b/transport.c\n> index 67f3666..908e08b 100644\n> --- a/transport.c\n> +++ b/transport.c\n> @@ -1001,8 +1001,9 @@ struct transport *transport_get(struct remote *remote, const char *url)\n>                 || starts_with(url, \"file://\")\n>                 || starts_with(url, \"git://\")\n>                 || starts_with(url, \"ssh://\")\n> -               || starts_with(url, \"git+ssh://\")\n> -               || starts_with(url, \"ssh+git://\")) {\n> +               || starts_with(url, \"git+ssh://\") /* deprecated - do not use */\n> +               || starts_with(url, \"ssh+git://\") /* deprecated - do not use */\n> +               ) {\n>                 /*\n>                  * These are builtin smart transports; \"allowed\" transports\n>                  * will be checked individually in git_connect.\n> --\n> 2.8.0-rc1-142-g215006a\n"},{"id":"281686","messageId":"1458838567.179868.6.camel@dwim.me","threadId":"41399","inReplyTo":"xmqqbn6ngvs8.fsf@gitster.mtv.corp.google.com","subject":"Re: [PATCH] Disown ssh+git and git+ssh","fromName":"Carlos Martín Nieto","fromEmail":"cmn@dwim.me","sentAt":"2016-03-24T16:56:07Z","receivedAt":"2016-03-24T16:56:07Z","isPatch":true,"sender":{"key":"cmn@dwim.me","avatar":"https://avatars.githubusercontent.com/u/335443?v=4"},"body":"On Wed, 2016-03-09 at 13:56 -0800, Junio C Hamano wrote:\n> Eric Sunshine <sunshine@sunshineco.com> writes:\n> \n> > \n> > It might be helpful to cite some reference to support the claim\n> > that\n> > they are \"silly\" since it's not necessarily obvious to readers who\n> > did\n> > not following the discussion.\n> > ...\n> > > \n> > >                 || starts_with(url, \"ssh://\")\n> > > +               /*\n> > > +                * These ways to spell the ssh transport remain\n> > > supported for\n> > > +                * compat but are undocumented and their use is\n> > > discouraged\n> > > +                */\n> > >                 || starts_with(url, \"git+ssh://\")\n> > >                 || starts_with(url, \"ssh+git://\")) {\n> > A little \"comment\" bikeshedding: Aside from undesirably\n> > interrupting\n> > the code flow, these large comment blocks draw far too much\n> > attention\n> > from the reader than these deprecated spellings of \"ssh\" deserve,\n> > thus\n> > making them seem overly important.\n> I've been waiting for an update for it but got tired of it.\n> Instead of discarding the topic, let's amend it like so:\n\nSorry, I missed the call for the rewording. The below looks good to me.\nThanks.\n\n> \n> -- >8 --\n> From: Carlos Martín Nieto <cmn@dwim.me>\n> Date: Mon, 15 Feb 2016 15:29:06 +0100\n> Subject: [PATCH] Disown ssh+git and git+ssh\n> \n> Some people argue that these were silly from the beginning (see\n> http://thread.gmane.org/gmane.comp.version-control.git/285590/focus=2\n> 85601\n> for example), but we have to support them for compatibility.\n> \n> That doesn't mean we have to show them in the documentation.  These\n> were already left out of the main list, but a reference in the main\n> manpage was left, so remove that.\n> \n> Also add a note to discourage their use if anybody goes looking for\n> them\n> in the source code.\n> \n> Signed-off-by: Carlos Martín Nieto <cmn@dwim.me>\n> Signed-off-by: Junio C Hamano <gitster@pobox.com>\n> ---\n>  Documentation/git.txt | 2 +-\n>  connect.c             | 4 ++--\n>  transport.c           | 5 +++--\n>  3 files changed, 6 insertions(+), 5 deletions(-)\n> \n> diff --git a/Documentation/git.txt b/Documentation/git.txt\n> index d987ad2..2f90635 100644\n> --- a/Documentation/git.txt\n> +++ b/Documentation/git.txt\n> @@ -1122,7 +1122,7 @@ of clones and fetches.\n>  \t    connection (or proxy, if configured)\n>  \n>  \t  - `ssh`: git over ssh (including `host:path` syntax,\n> -\t    `git+ssh://`, etc).\n> +\t    `ssh://`, etc).\n>  \n>  \t  - `rsync`: git over rsync\n>  \n> diff --git a/connect.c b/connect.c\n> index fd7ffe1..3babb81 100644\n> --- a/connect.c\n> +++ b/connect.c\n> @@ -267,9 +267,9 @@ static enum protocol get_protocol(const char\n> *name)\n>  \t\treturn PROTO_SSH;\n>  \tif (!strcmp(name, \"git\"))\n>  \t\treturn PROTO_GIT;\n> -\tif (!strcmp(name, \"git+ssh\"))\n> +\tif (!strcmp(name, \"git+ssh\")) /* deprecated - do not use */\n>  \t\treturn PROTO_SSH;\n> -\tif (!strcmp(name, \"ssh+git\"))\n> +\tif (!strcmp(name, \"ssh+git\")) /* deprecated - do not use */\n>  \t\treturn PROTO_SSH;\n>  \tif (!strcmp(name, \"file\"))\n>  \t\treturn PROTO_FILE;\n> diff --git a/transport.c b/transport.c\n> index 67f3666..908e08b 100644\n> --- a/transport.c\n> +++ b/transport.c\n> @@ -1001,8 +1001,9 @@ struct transport *transport_get(struct remote\n> *remote, const char *url)\n>  \t\t|| starts_with(url, \"file://\")\n>  \t\t|| starts_with(url, \"git://\")\n>  \t\t|| starts_with(url, \"ssh://\")\n> -\t\t|| starts_with(url, \"git+ssh://\")\n> -\t\t|| starts_with(url, \"ssh+git://\")) {\n> +\t\t|| starts_with(url, \"git+ssh://\") /* deprecated - do\n> not use */\n> +\t\t|| starts_with(url, \"ssh+git://\") /* deprecated - do\n> not use */\n> +\t\t) {\n>  \t\t/*\n>  \t\t * These are builtin smart transports; \"allowed\"\n> transports\n>  \t\t * will be checked individually in git_connect.\n"}]}