On Wed, Dec 12, 2012 at 4:58 PM, Max Horn <max@xxxxxxxxx> wrote: > > On 12.12.2012, at 23:14, Felipe Contreras wrote: > >> On Tue, Nov 27, 2012 at 5:03 PM, Max Horn <max@xxxxxxxxx> wrote: >> >>> index 5ce4cda..9a7e583 100644 >>> --- a/Documentation/git-remote-helpers.txt >>> +++ b/Documentation/git-remote-helpers.txt >>> @@ -35,6 +35,37 @@ transport protocols, such as 'git-remote-http', 'git-remote-https', >>> 'git-remote-ftp' and 'git-remote-ftps'. They implement the capabilities >>> 'fetch', 'option', and 'push'. >>> >>> +INVOCATION >>> +---------- >>> + >>> +Remote helper programs are invoked with one or (optionally) two >>> +arguments. The first argument specifies a remote repository as in git; >>> +it is either the name of a configured remote or a URL. The second >>> +argument specifies a URL; it is usually of the form >>> +'<transport>://<address>', but any arbitrary string is possible. >>> +The 'GIT_DIR' environment variable is set up for the remote helper >>> +and can be used to determine where to store additional data or from >>> +which directory to invoke auxiliary git commands. >>> + >>> +When git encounters a URL of the form '<transport>://<address>', where >>> +'<transport>' is a protocol that it cannot handle natively, it >>> +automatically invokes 'git remote-<transport>' with the full URL as >>> +the second argument. If such a URL is encountered directly on the >>> +command line, the first argument is the same as the second, and if it >>> +is encountered in a configured remote, the first argument is the name >>> +of that remote. >> >> Maybe it's worth mentioning that if the alias of the remote is not >> specified, the URL is used instead. > > Worth a thought yeah -- but beyond the scope of this patch: I merely moved this text around, but did not touch it otherwise. > >> >>> +A URL of the form '<transport>::<address>' explicitly instructs git to >>> +invoke 'git remote-<transport>' with '<address>' as the second >>> +argument. If such a URL is encountered directly on the command line, >>> +the first argument is '<address>', and if it is encountered in a >>> +configured remote, the first argument is the name of that remote. >>> + >>> +Additionally, when a configured remote has 'remote.<name>.vcs' set to >>> +'<transport>', git explicitly invokes 'git remote-<transport>' with >>> +'<name>' as the first argument. If set, the second argument is >>> +'remote.<name>.url'; otherwise, the second argument is omitted. >> >> I find all this text a bit confusing. First argument, second argument, >> etc. Personally, I would describe everything in the terms of alias >> (1st arg), and URL (2nd arg). > > Yeah, I also thought about that, but as above, deliberately did not touch it here, but only moved it around. I'll be happy to revisit this on a future date, though. Oh, in that case it's fine, but I would have named it "move invocation before input format", or something that has *move*, or *shuffle*. -- Felipe Contreras -- 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