{"thread":{"id":"23222","subject":"[PATCH 1/2] Documentation/remote-helpers: Add invocation and see also sections","startedAt":"2010-03-29T04:04:35Z","lastAt":"2010-04-05T22:28:02Z","messageCount":5,"participants":["Ramkumar Ramachandra","Jonathan Nieder","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":2},"messages":[{"id":"138048","messageId":"f3271551003282104v384d2dc7qe0d3c092c01bc505@mail.gmail.com","threadId":"23222","inReplyTo":null,"subject":"[PATCH 1/2] Documentation/remote-helpers: Add invocation and see also sections","fromName":"Ramkumar Ramachandra","fromEmail":"artagnon@gmail.com","sentAt":"2010-03-29T04:04:35Z","receivedAt":"2010-03-29T04:04:35Z","isPatch":true,"sender":{"key":"r@artagnon.com","avatar":"https://avatars.githubusercontent.com/u/37226?v=4"},"body":"Add Invocation section, and fill it with documentation by Ilari\nLiusvaara. Add See Also section refering to the git-config page\nbecause several configration options are referred to in the Invocation\nsection.\n---\n Documentation/git-remote-helpers.txt |   51 +++++++++++++++++++++++++++++++++\n 1 files changed, 51 insertions(+), 0 deletions(-)\n\ndiff --git a/Documentation/git-remote-helpers.txt\nb/Documentation/git-remote-helpers.txt\nindex 2382fb4..58533e5 100644\n--- a/Documentation/git-remote-helpers.txt\n+++ b/Documentation/git-remote-helpers.txt\n@@ -38,6 +38,54 @@ Git comes with a \"curl\" family of remote helpers,\nspecifically\n 'git-remote-ftps'. They implement the capabilities 'fetch', 'option',\n and 'push'.\n\n+INVOCATION\n+----------\n+\n+These programs can always be invoked as 'git remote-<transport>' by\n+the end user. However, the following are five situations in which\n+these programs are automatically invoked by git in decreasing order of\n+priority.\n+\n+1. URL using <transport>::<string> syntax is used directly on command\n+   line.\n++\n+The helper is invoked with <transport>::<string> as the first argument\n+and <string> as the second argument.\n++\n+<name> can only contain alphanumeric characters 0-9, A-Z and a-z.\n+\n+2. remote.<name>.url is unset, but remote.<name>.vcs is set to\n+   <transport>.\n++\n+The helper is invoked with a single argument, <name>.\n+\n+3. remote.<name>.url is set to a value using the <transport>::<string>\n+   syntax.\n++\n+The helper is invoked with <name> as the first argument and <string>\n+as the second argument.\n++\n+<name> can only contain alphanumeric characters 0-9, A-Z and a-z.\n+\n+4. remote.<name>.url is set to a value using the\n+   <transport>://<rest-of-URL> syntax.\n++\n+The helper is invoked with <name> as the first argument and\n+<helper>://<rest-of-URL> as the second argument.\n++\n+<transport> cannot be equal to any of builtin protocols 'rsync',\n+'file', 'git', 'ssh', 'git+ssh' and 'ssh+git'\n+\n+5. URL using <transport>://<rest-of-URL> syntax is used directly on\n+   command line.\n++\n+The helper is invoked with two arguments, both equal to\n+<transport>://<rest-of-URL>.\n++\n+<transport> cannot be equal to any of builtin protocols 'rsync',\n+'file', 'git', 'ssh', 'git+ssh' and 'ssh+git'\n+\n COMMANDS\n --------\n\n@@ -206,6 +254,10 @@ OPTIONS\n \tmust not rely on this option being set before\n \tconnect request occurs.\n\n+SEE ALSO\n+--------\n+linkgit:git-config[1]\n+\n Documentation\n -------------\n Documentation by Daniel Barkalow and Ilari Liusvaara\n-- \n1.7.0.3\n"},{"id":"138051","messageId":"20100329050600.GA9238@progeny.tock","threadId":"23222","inReplyTo":"f3271551003282104v384d2dc7qe0d3c092c01bc505@mail.gmail.com","subject":"Re: [PATCH 1/2] Documentation/remote-helpers: Add invocation and see also sections","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2010-03-29T05:06:00Z","receivedAt":"2010-03-29T05:06:00Z","isPatch":true,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Hi,\n\nI know almost nothing about the transport machinery, so please take\nanything I say with a grain of salt.\n\nRamkumar Ramachandra wrote:\n\n> --- a/Documentation/git-remote-helpers.txt\n> +++ b/Documentation/git-remote-helpers.txt\n> @@ -38,6 +38,54 @@ Git comes with a \"curl\" family of remote helpers, specifically\n>  'git-remote-ftps'. They implement the capabilities 'fetch', 'option',\n>  and 'push'.\n> \n> +INVOCATION\n> +----------\n> +\n> +These programs can always be invoked as 'git remote-<transport>' by\n> +the end user. However, the following are five situations in which\n> +these programs are automatically invoked by git in decreasing order of\n> +priority.\n\nIt took a moment for me to figure out what “decreasing order of priority”\nmeans here.  Maybe it would be clearer to make the cases mutually\nexclusive so it is not needed.\n\nThat is:\n\n These programs can be used directly as ‘git remote-<transport>’ by\n users and third-party scripts.  However, in the more usual case,\n they will be used transparently by the transport machinery (i.e., by\n commands such as git ls-remote, git send-pack, and git archive --remote).\n\n The “remote name” and URL passed to the remote helper depend on how\n the repository is specified to git.\n\n> +1. URL using <transport>::<string> syntax is used directly on command\n> +   line.\n> ++\n> +The helper is invoked with <transport>::<string> as the first argument\n> +and <string> as the second argument.\n\n <transport>::<address>\n ~~~~~~~~~~~~~~~~~~~~~~\n A URL of the form <transport>::<address> can be used to name a\n repository on the git command line, with <address> an arbitrary string.\n\n The 'git remote-<transport>' helper will be invoked with the full\n <transport>::<address> URL as the first argument and <address> as the\n second argument.\n \n> ++\n> +<name> can only contain alphanumeric characters 0-9, A-Z and a-z.\n> +\n> +2. remote.<name>.url is unset, but remote.<name>.vcs is set to\n> +   <transport>.\n> ++\n> +The helper is invoked with a single argument, <name>.\n> +\n\n <nickname> with vcs set\n ~~~~~~~~~~~~~~~~~~~~~~~\n A remote nickname (see git-remote(1)) can be configured to use the\n ‘git remote-<transport>’ helper by setting the vcs variable to\n <transport> in the [remote \"<nickname>\"] section of a configuration file.\n The url variable in such a section is optional and can be set to an\n arbitrary string <address>.\n\n If the url variable is set, the helper will be invoked with <nickname>\n as the first argument and <address> as the second argument.\n Otherwise, the helper will be invoked with a single argument, <nickname>.\n\n> +4. remote.<name>.url is set to a value using the\n> +   <transport>://<rest-of-URL> syntax.\n> ++\n> +The helper is invoked with <name> as the first argument and\n> +<helper>://<rest-of-URL> as the second argument.\n> ++\n> +<transport> cannot be equal to any of builtin protocols 'rsync',\n> +'file', 'git', 'ssh', 'git+ssh' and 'ssh+git'\n> +\n\n <nickname> with vcs unset\n ~~~~~~~~~~~~~~~~~~~~~~~~~\n If the [remote \"<nickname>\"] configuration does not include a vcs\n setting, a remote helper can be specified by a url setting with a\n value of the form \"<transport>://<rest-of-URL>\".\n\n The ‘git remote-<transport>’ helper will be invoked with\n the <nickname> as first argument and <transport>://<rest-of-URL>\n as the second argument.\n\n Exception: the built-in 'rsync', 'file', 'git', 'ssh', 'git+ssh',\n and 'ssh+git' transports are not handled using remote helpers.\n\n> +5. URL using <transport>://<rest-of-URL> syntax is used directly on\n> +   command line.\n> ++\n> +The helper is invoked with two arguments, both equal to\n> +<transport>://<rest-of-URL>.\n> ++\n> +<transport> cannot be equal to any of builtin protocols 'rsync',\n> +'file', 'git', 'ssh', 'git+ssh' and 'ssh+git'\n> +\n\n <transport>://<rest-of-URL>\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~\n A URL of the form <transport>://<rest-of-URL> can be used to name a\n repository on the git command line, with <rest-of-URL> an arbitrary\n string.\n\n If 'transport' is not one of the built-in protocols listed above,\n the 'git remote-<transport>' helper will be invoked with two\n arguments, both equal to the full <transport>://<rest-of-URL>\n URL.\n\n>  COMMANDS\n>  --------\n> \n> @@ -206,6 +254,10 @@ OPTIONS\n>  \tmust not rely on this option being set before\n>  \tconnect request occurs.\n> \n> +SEE ALSO\n> +--------\n> +linkgit:git-config[1]\n\nlinkgit:git-remote[1], too.\n\nHTH,\nJonathan\n"},{"id":"138056","messageId":"f3271551003282322n3768c391mcce1df2ffbefb634@mail.gmail.com","threadId":"23222","inReplyTo":"20100329050600.GA9238@progeny.tock","subject":"Re: [PATCH 1/2] Documentation/remote-helpers: Add invocation and see also sections","fromName":"Ramkumar Ramachandra","fromEmail":"artagnon@gmail.com","sentAt":"2010-03-29T06:22:22Z","receivedAt":"2010-03-29T06:22:22Z","isPatch":true,"sender":{"key":"r@artagnon.com","avatar":"https://avatars.githubusercontent.com/u/37226?v=4"},"body":"Hi,\n\n> I know almost nothing about the transport machinery, so please take\n> anything I say with a grain of salt.\n\nThanks for the fantastic corrections/ additions! I'll wait for Daniel\nBarkalow's response to see whether or not to include this in the\nmanpage.\n\n-- Ram\n"},{"id":"138678","messageId":"7vljd1mu48.fsf@alter.siamese.dyndns.org","threadId":"23222","inReplyTo":"f3271551003282104v384d2dc7qe0d3c092c01bc505@mail.gmail.com","subject":"Re: [PATCH 1/2] Documentation/remote-helpers: Add invocation and see also sections","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2010-04-05T22:07:03Z","receivedAt":"2010-04-05T22:07:03Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Ramkumar Ramachandra <artagnon@gmail.com> writes:\n\n> diff --git a/Documentation/git-remote-helpers.txt\n> b/Documentation/git-remote-helpers.txt\n> index 2382fb4..58533e5 100644\n> --- a/Documentation/git-remote-helpers.txt\n> +++ b/Documentation/git-remote-helpers.txt\n> @@ -38,6 +38,54 @@ Git comes with a \"curl\" family of remote helpers,\n> specifically\n>  'git-remote-ftps'. They implement the capabilities 'fetch', 'option',\n>  and 'push'.\n>\n> +INVOCATION\n> +----------\n> +\n> +These programs can always be invoked as 'git remote-<transport>' by\n> +the end user.\n\nThat directly contradicts with what you wrote in the other [1/2] patch to\nthe same file, where you said \"are normally not used directly by end\nusers\".\n\nYes they _can_ be invoked, but unless you are in the business of debugging\nthem, you usually don't, so I don't see much point saying this.\n"},{"id":"138680","messageId":"7v8w91mt59.fsf@alter.siamese.dyndns.org","threadId":"23222","inReplyTo":"7vljd1mu48.fsf@alter.siamese.dyndns.org","subject":"Re: [PATCH 1/2] Documentation/remote-helpers: Add invocation and see also sections","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2010-04-05T22:28:02Z","receivedAt":"2010-04-05T22:28:02Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Junio C Hamano <gitster@pobox.com> writes:\n\n>> +INVOCATION\n>> +----------\n>> +\n>> +These programs can always be invoked as 'git remote-<transport>' by\n>> +the end user.\n>\n> That directly contradicts with what you wrote in the other [1/2] patch to\n> the same file, where you said \"are normally not used directly by end\n> users\".\n\nScratch this comment; you are already up to v4.  Sorry.\n"}]}