Re: [PATCH] Move all dashed form git commands to libexecdir
- From
Linus Torvalds <torvalds@linux-foundation.org>
- Date
- Nov 30, 2007, 02:29 UTC
- Message-ID
- <alpine.LFD.0.9999.0711291821220.8458@woody.linux-foundation.org>
- In-Reply-To
- <20071130005852.GA12224@coredump.intra.peff.net>
On Thu, 29 Nov 2007, Jeff King wrote:
Show 5 quoted lines
> > 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).
Yes. I meant that we might as well keep all the git-xyz forms around, but _only_ in the libexec directory (and make sure that the libexec directory by default is *not* a binary directory), so that they'd normally not be visible.
So then, people who want to use the old-fashioned git-xyz forms, because they just really hate white-space or whatever, could choose to do one of two things: - either just change the default libexec directory to be the same as the binary install directory, and have all the git-xyz things in the same place they've always been. - or just add $(gitlibexec) into their path.
but the default (which is what 99% of all people use) would be to not show them. I also think that it makes sense to avoid wasting diskspace with duplicate files, so in situations where you don't have hardlinks, just don't install the git-xyz files at all by default (and again, maybe we can have a option to the installer to do it for people who really are very attached to the git-xyz format, and prefer to waste even a lot of disk on it)
So I just think that the whole idiotic complaint that some people have (that whole "git-<tab><tab>" shows "Display all 144 possibilities?" and people are somehow using that as an argument that git is "complex") should be something we strive to undo. I think the complaint is insane (because the answer is "well, nobody forces you to _use_ all the power and scripts we give you!"), but still, it's a complaint, so let's just assume the user is right, and try to fix it.
So when you do "git-<tab><tab>" it should just beep at you and not show anything at all by default. And when you do "git <tab><tab>", we should make sure that the bash expansion (or zsh or whatever) shows a nice collection of common plumbing, not soemthing really scary.
Linus