Wincent Colaiuta <win@xxxxxxxxxxx> writes: > For the benefit of newcomers, I just wish the plumbing was kept a > little bit out of sight. You know, porcelain in /usr/bin and plumbing > in /usr/libexec or other such place. > > It's fine once you've learnt your workflows and know the 10 or 15 Git > tools that you'll be using day-to-day; but for people who are just > starting off this can be a little bit intimidating: > > $ git-<tab> > Display all 146 possibilities? (y or n) I'd agree to that but I've always considered this an issue for distros. We've supported an ability for them to specify a gitexecdir separate from /usr/bin in our Makefile for almost two years. The tab completion for bash and zsh would also help you here, but I see there are quite a few commands that should not be there, and it's time to clean it up. $ git <tab> add fetch push am filter-branch rebase annotate format-patch rebase--interactive apply fsck relink archive gc remote bisect get-tar-commit-id repack blame grep request-pull branch gui reset bundle imap-send resolve checkout init revert checkout-index instaweb rm cherry less send-email cherry-pick lg shortlog citool log show clean lost-found show-branch clone ls-files show-ref co ls-remote stash commit ls-tree status config merge submodule convert-objects mergetool svnimport count-objects mv tag describe name-rev var diff pickaxe verify-pack diff-stages pull whatchanged Perhaps this list can be a starting point... contrib/completion/git-completion.bash | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index cad842a..1bba68b 100755 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -359,6 +359,15 @@ __git_commands () upload-pack) : plumbing;; write-tree) : plumbing;; verify-tag) : plumbing;; + annotate) : use blame;; + checkout-index) : plumbing;; + diff-stages) : plumbing;; + get-tar-commit-id) : plumbing;; + lost-found) : deprecated;; + rebase--interactive) : plumbing;; + relink) : obsolete;; + whatchanged) : plumbing;; + verify-pack) : plumbing;; *) echo $i;; esac done - 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