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

Re: [PATCH] Move all dashed form git commands to libexecdir

From
Jeff King <peff@peff.net>
Date
Nov 30, 2007, 00:58 UTC
Message-ID
<20071130005852.GA12224@coredump.intra.peff.net>
In-Reply-To
<7vzlwwsgkp.fsf@gitster.siamese.dyndns.org>
On Thu, Nov 29, 2007 at 04:49:26PM -0800, Junio C Hamano wrote:
Show 5 quoted lines
> I understand your point was primarily "git-a<tab>".  I think it has been
> solved for bash and zsh but not for other shells.  I think possible and
> sensible avenues are (1) punt -- cvs, svn nor hg people do not seem to
> have problem with it, or (2) implement completion in your other favorite
> shells.

My point is that (2) is already implemented for every program (shell or no) which understands filename completion, and there is a proposal for taking it away. I would consider that, except I haven't see any claimed advantages except that the hardlinks are awful under Windows.

I am proposing to have those dashed forms on platforms where it makes sense, but to treat them as second-class citizens (by putting them in $(libexecdir), which will address consistency problems.

Show 13 quoted lines
> And I think the following from Linus makes sense.
> 
> > And from a consistency standpoint, that would be a *good* thing. There are 
> > many reasons why the git-xyz format *cannot* be the "consistent" form
> > (ranging from the flags like --bare and -p to just aliases), so 
> > encouraging people to move to "git xyz" is just a good idea.
> >
> > Yeah, yeah, the man-pages need the "git-xyz" form, but on the other hand, 
> > rather than "man git-xyz", you can just do "git help xyz" instead, and now 
> > you're consistently avoiding the dash again!
> 
> but I am feeling quite feverish today so I may be missing something
> obvious.

I thought Linus' point was that moving the subcommands was sufficient for dealing with the consistency issue (i.e., all scripts would move to "git foo" and only those people who really wanted to would put the dashed forms in their path). From the same email you quoted, but just above:

Show 10 quoted lines
> On Thu, 29 Nov 2007, Jeff King wrote:
> >
> > Yes, I am fine with the user having to go to extra lengths to use the
> > dash forms (like adding $(libexecdir) to their path), which I think
> > should address your consistency concern.
> 
> I agree. If we actually start moving the subcommands into a separate
> directory, I suspect scripts will be fixed up soon enough. Of course
> people *can* do it by just adding the path, but more likely, we'll just
> see people start doign "git xyz" instead of "git-xyz".
But now we are arguing about what Linus meant like it is scripture. ;)
-Peff
Previous: Junio C HamanoNext: Nicolas Pitre
Message 47 of 92 in “Move all dashed form git commands to libexecdir”
  1. Move all dashed form git commands to libexecdirNguyễn Thái Ngọc Duy, Nov 27, 2007
  2. Johannes SchindelinNov 27, 2007
  3. Nicolas PitreNov 27, 2007
  4. Move all dashed form git commands to libexecdirNguyễn Thái Ngoc Duy, Nov 27, 2007
  5. Johannes SchindelinNov 27, 2007
  6. Jan HudecNov 28, 2007
  7. Junio C HamanoNov 28, 2007
  8. Jan HudecNov 28, 2007
  9. Nguyen Thai Ngoc DuyNov 28, 2007
  10. Junio C HamanoNov 28, 2007
  11. Johannes SchindelinNov 28, 2007
  12. Junio C HamanoNov 28, 2007
  13. Johannes SchindelinNov 29, 2007
  14. A Large Angry SCMNov 29, 2007
  15. Junio C HamanoNov 29, 2007
  16. Nguyen Thai Ngoc DuyNov 29, 2007
  17. Nicolas PitreNov 29, 2007
  18. Junio C HamanoNov 29, 2007
  19. Wincent ColaiutaNov 30, 2007
  20. Eyvind BernhardsenNov 30, 2007
  21. transport.c: call dash-less form of receive-pack and upload-pack on remoteJohannes Schindelin, Nov 30, 2007
  22. Junio C HamanoDec 1, 2007
  23. Johannes SchindelinDec 1, 2007
  24. Junio C HamanoDec 1, 2007
  25. Johannes SchindelinDec 1, 2007
  26. Johannes SchindelinDec 1, 2007
  27. Junio C HamanoDec 2, 2007
  28. 0/3 Call builtin functions directly, was Re: [PATCH] transport.c: call dash-less form of receive-pack and upload-pack on remoteJohannes Schindelin, Dec 2, 2007
  29. 1/3 Introduce release_all_objects()Johannes Schindelin, Dec 2, 2007
  30. 2/3 Include the objects needed for the builtin functions into libgit.aJohannes Schindelin, Dec 2, 2007
  31. 3/3 Introduce execv_git_builtin() and use itJohannes Schindelin, Dec 2, 2007
  32. Johannes SchindelinDec 2, 2007
  33. 3/3 Introduce execv_git_builtin() and use itJohannes Schindelin, Dec 2, 2007
  34. Junio C HamanoDec 2, 2007
  35. Johannes SchindelinDec 2, 2007
  36. Nguyen Thai Ngoc DuyNov 30, 2007
  37. Johannes SchindelinNov 30, 2007
  38. Jeff KingNov 29, 2007
  39. Nguyen Thai Ngoc DuyNov 29, 2007
  40. Jeff KingNov 29, 2007
  41. Johannes SchindelinNov 29, 2007
  42. Jeff KingNov 29, 2007
  43. Linus TorvaldsNov 29, 2007
  44. Junio C HamanoNov 30, 2007
  45. Jeff KingNov 30, 2007
  46. Junio C HamanoNov 30, 2007
  47. Jeff KingNov 30, 2007
  48. Nicolas PitreNov 30, 2007
  49. Jeff KingNov 30, 2007
  50. Steffen ProhaskaNov 30, 2007
  51. Andreas EricssonNov 30, 2007
  52. Jeff KingNov 30, 2007
  53. Junio C HamanoNov 30, 2007
  54. Jeff KingNov 30, 2007
  55. Johannes SchindelinNov 30, 2007
  56. Wincent ColaiutaDec 2, 2007
  57. Johannes SchindelinDec 2, 2007
  58. Pascal ObryDec 2, 2007
  59. Johannes SchindelinDec 2, 2007
  60. Junio C HamanoDec 1, 2007
  61. Jeff KingDec 1, 2007
  62. Linus TorvaldsNov 30, 2007
  63. Nicolas PitreNov 30, 2007
  64. Steffen ProhaskaNov 30, 2007
  65. Jeff KingNov 30, 2007
  66. Santi BéjarNov 30, 2007
  67. Jeff KingNov 30, 2007
  68. Linus TorvaldsNov 30, 2007
  69. Jeff KingNov 30, 2007
  70. Johannes SchindelinNov 30, 2007
  71. Jeff KingNov 30, 2007
  72. Johannes SchindelinNov 30, 2007
  73. Jeff KingNov 30, 2007
  74. Johannes SchindelinNov 30, 2007
  75. Nicolas PitreNov 30, 2007
  76. Jeff KingNov 30, 2007
  77. Nicolas PitreNov 30, 2007
  78. Jeff KingNov 30, 2007
  79. Nicolas PitreNov 30, 2007
  80. Jeff KingNov 30, 2007
  81. A Large Angry SCMNov 30, 2007
  82. Nguyen Thai Ngoc DuyNov 30, 2007
  83. A Large Angry SCMNov 30, 2007
  84. Johannes SchindelinNov 30, 2007
  85. A Large Angry SCMNov 30, 2007
  86. Nicolas PitreNov 30, 2007
  87. A Large Angry SCMNov 30, 2007
  88. Nicolas PitreNov 30, 2007
  89. Jakub NarebskiNov 29, 2007
  90. Junio C HamanoDec 1, 2007
  91. Jeff KingDec 1, 2007
  92. Nguyen Thai Ngoc DuyDec 2, 2007

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.