diff options
| author | Mike Frysinger <vapier@google.com> | 2019-12-02 16:49:44 -0500 |
|---|---|---|
| committer | David Pursehouse <dpursehouse@collab.net> | 2019-12-05 05:00:21 +0000 |
| commit | 7c321f1bf6c19efdeae1042acfff5933ab4b376f (patch) | |
| tree | 4deadb4e6d60fd6e8d990f309b2e0c83719f2416 | |
| parent | 7ac12a9b2296028a2e9fe5eb8a0dcc07c81a630a (diff) | |
| download | git-repo-7c321f1bf6c19efdeae1042acfff5933ab4b376f.tar.gz git-repo-7c321f1bf6c19efdeae1042acfff5933ab4b376f.zip | |
repo: include subcommands in --help output
Also point people to `repo help` so it's easier to navigate the tool.
Bug: https://crbug.com/gerrit/12022
Change-Id: Ib3be331a2cef32caa193640bf8d54bd1443fce60
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/247292
Tested-by: Mike Frysinger <vapier@google.com>
Reviewed-by: David Pursehouse <dpursehouse@collab.net>
| -rwxr-xr-x | main.py | 15 |
1 files changed, 13 insertions, 2 deletions
@@ -27,6 +27,7 @@ import netrc import optparse import os import sys +import textwrap import time from pyversion import is_python3 @@ -71,8 +72,10 @@ if not is_python3(): input = raw_input global_options = optparse.OptionParser( - usage="repo [-p|--paginate|--no-pager] COMMAND [ARGS]" - ) + usage='repo [-p|--paginate|--no-pager] COMMAND [ARGS]', + add_help_option=False) +global_options.add_option('-h', '--help', action='store_true', + help='show this help message and exit') global_options.add_option('-p', '--paginate', dest='pager', action='store_true', help='display command output in the pager') @@ -123,6 +126,14 @@ class _Repo(object): argv = [] gopts, _gargs = global_options.parse_args(glob) + if gopts.help: + global_options.print_help() + commands = ' '.join(sorted(self.commands)) + wrapped_commands = textwrap.wrap(commands, width=77) + print('\nAvailable commands:\n %s' % ('\n '.join(wrapped_commands),)) + print('\nRun `repo help <command>` for command-specific details.') + global_options.exit() + return (name, gopts, argv) def _Run(self, name, gopts, argv): |
