git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 1/3] help: redirect to aliased commands for "git cmd --help"

From
Jeff King <peff@peff.net>
Date
Oct 3, 2018, 07:06 UTC
Message-ID
<20181003070645.GA6019@sigill.intra.peff.net>
In-Reply-To
<9ab3d69a-033a-e5a0-7459-c6ba8a2ec853@rasmusvillemoes.dk>
On Wed, Oct 03, 2018 at 08:24:14AM +0200, Rasmus Villemoes wrote:
Show 6 quoted lines
> > The comment probably needs to spell out that exclude_guides
> > is the same as your "we were invoked as...".
> 
> Will do. That will also make the string --exclude-guides (i.e., with a
> dash) appear in the comment, making it more likely to be found should
> anyone change when and how --exclude-guides is implied.
OK. I can live with that.
Show 15 quoted lines
> > So we split only to find argv[0] here. But then we don't return it. That
> > works because the split is done in place, meaning we must have inserted
> > a NUL in alias. That's sufficiently subtle that it might be worth
> > spelling it out in a comment.
> 
> OK, I actually had precisely
> 
> +		/*
> +		 * We use split_cmdline() to get the first word of the
> +		 * alias, to ensure that we use the same rules as when
> +		 * the alias is actually used. split_cmdline()
> +		 * modifies alias in-place.
> +		 */
> 
> in v1, but thought it might be overly verbose. I'll put it back in.
:) That's perfect.
Show 7 quoted lines
> > We don't need to free alias here as we do above, because we're passing
> > it back. We should free argv, though, I think (not its elements, just
> > the array itself).
> 
> Yeah, I thought about this, and removing free(argv) was the last thing I
> did before sending v1 - because we were going to leak alias anyway. I'm
> happy to put it back in, along with...

Thanks. I think this is different than "alias" because we really do leak it _here_, whereas alias lives on and can be UNLEAKed later.

Show 6 quoted lines
> > Unfortunately the caller is going to leak our returned "alias", [...] I think it may be OK to overlook
> > that and just UNLEAK() it in cmd_help().
> 
> ...this. Except I'd rather do the UNLEAK in check_git_cmd (the
> documentation does say "only from cmd_* functions or their direct
> helpers") to make it a more targeted annotation.
Yeah, I think that's fine. Thanks!
-Peff
Previous: Rasmus VillemoesNext: Rasmus Villemoes
Message 30 of 43 in “help: allow redirecting to help for aliased command”
  1. help: allow redirecting to help for aliased commandRasmus Villemoes, Sep 26, 2018
  2. Taylor BlauSep 26, 2018
  3. Duy NguyenSep 26, 2018
  4. Rasmus VillemoesSep 28, 2018
  5. Junio C HamanoSep 26, 2018
  6. Taylor BlauSep 26, 2018
  7. Junio C HamanoSep 26, 2018
  8. Junio C HamanoSep 26, 2018
  9. Taylor BlauSep 26, 2018
  10. Rasmus VillemoesSep 28, 2018
  11. Jeff KingSep 26, 2018
  12. Junio C HamanoSep 26, 2018
  13. Rasmus VillemoesSep 28, 2018
  14. Jeff KingSep 29, 2018
  15. Junio C HamanoSep 29, 2018
  16. Jeff KingSep 30, 2018
  17. Junio C HamanoSep 30, 2018
  18. Jeff KingSep 30, 2018
  19. Rasmus VillemoesSep 28, 2018
  20. Junio C HamanoSep 28, 2018
  21. Duy NguyenSep 26, 2018
  22. 1/3 help: redirect to aliased commands for "git cmd --help"Rasmus Villemoes, Oct 1, 2018
  23. 2/3 git.c: handle_alias: prepend alias info when first argument is -hRasmus Villemoes, Oct 1, 2018
  24. Jeff KingOct 3, 2018
  25. 3/3 git-help.txt: document "git help cmd" vs "git cmd --help" for aliasesRasmus Villemoes, Oct 1, 2018
  26. Jeff KingOct 3, 2018
  27. Rasmus VillemoesOct 3, 2018
  28. Jeff KingOct 3, 2018
  29. Rasmus VillemoesOct 3, 2018
  30. Jeff KingOct 3, 2018
  31. 0/3 alias help tweaksRasmus Villemoes, Oct 3, 2018
  32. 1/3 help: redirect to aliased commands for "git cmd --help"Rasmus Villemoes, Oct 3, 2018
  33. Junio C HamanoOct 5, 2018
  34. Rasmus VillemoesOct 5, 2018
  35. Junio C HamanoOct 5, 2018
  36. 2/3 git.c: handle_alias: prepend alias info when first argument is -hRasmus Villemoes, Oct 3, 2018
  37. 3/3 git-help.txt: document "git help cmd" vs "git cmd --help" for aliasesRasmus Villemoes, Oct 3, 2018
  38. Jeff KingOct 4, 2018
  39. 0/3 alias help tweaksRasmus Villemoes, Oct 9, 2018
  40. 1/3 help: redirect to aliased commands for "git cmd --help"Rasmus Villemoes, Oct 9, 2018
  41. 2/3 git.c: handle_alias: prepend alias info when first argument is -hRasmus Villemoes, Oct 9, 2018
  42. 3/3 git-help.txt: document "git help cmd" vs "git cmd --help" for aliasesRasmus Villemoes, Oct 9, 2018
  43. Junio C HamanoOct 12, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.