diff options
Diffstat (limited to 'main.py')
-rwxr-xr-x | main.py | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -36,6 +36,7 @@ try: | |||
36 | except ImportError: | 36 | except ImportError: |
37 | kerberos = None | 37 | kerberos = None |
38 | 38 | ||
39 | from color import SetDefaultColoring | ||
39 | from trace import SetTrace | 40 | from trace import SetTrace |
40 | from git_command import git, GitCommand | 41 | from git_command import git, GitCommand |
41 | from git_config import init_ssh, close_ssh | 42 | from git_config import init_ssh, close_ssh |
@@ -44,6 +45,7 @@ from command import MirrorSafeCommand | |||
44 | from subcmds.version import Version | 45 | from subcmds.version import Version |
45 | from editor import Editor | 46 | from editor import Editor |
46 | from error import DownloadError | 47 | from error import DownloadError |
48 | from error import InvalidProjectGroupsError | ||
47 | from error import ManifestInvalidRevisionError | 49 | from error import ManifestInvalidRevisionError |
48 | from error import ManifestParseError | 50 | from error import ManifestParseError |
49 | from error import NoManifestException | 51 | from error import NoManifestException |
@@ -69,6 +71,9 @@ global_options.add_option('-p', '--paginate', | |||
69 | global_options.add_option('--no-pager', | 71 | global_options.add_option('--no-pager', |
70 | dest='no_pager', action='store_true', | 72 | dest='no_pager', action='store_true', |
71 | help='disable the pager') | 73 | help='disable the pager') |
74 | global_options.add_option('--color', | ||
75 | choices=('auto', 'always', 'never'), default=None, | ||
76 | help='control color usage: auto, always, never') | ||
72 | global_options.add_option('--trace', | 77 | global_options.add_option('--trace', |
73 | dest='trace', action='store_true', | 78 | dest='trace', action='store_true', |
74 | help='trace git command execution') | 79 | help='trace git command execution') |
@@ -113,6 +118,8 @@ class _Repo(object): | |||
113 | print('fatal: invalid usage of --version', file=sys.stderr) | 118 | print('fatal: invalid usage of --version', file=sys.stderr) |
114 | return 1 | 119 | return 1 |
115 | 120 | ||
121 | SetDefaultColoring(gopts.color) | ||
122 | |||
116 | try: | 123 | try: |
117 | cmd = self.commands[name] | 124 | cmd = self.commands[name] |
118 | except KeyError: | 125 | except KeyError: |
@@ -167,6 +174,12 @@ class _Repo(object): | |||
167 | else: | 174 | else: |
168 | print('error: no project in current directory', file=sys.stderr) | 175 | print('error: no project in current directory', file=sys.stderr) |
169 | result = 1 | 176 | result = 1 |
177 | except InvalidProjectGroupsError as e: | ||
178 | if e.name: | ||
179 | print('error: project group must be enabled for project %s' % e.name, file=sys.stderr) | ||
180 | else: | ||
181 | print('error: project group must be enabled for the project in the current directory', file=sys.stderr) | ||
182 | result = 1 | ||
170 | finally: | 183 | finally: |
171 | elapsed = time.time() - start | 184 | elapsed = time.time() - start |
172 | hours, remainder = divmod(elapsed, 3600) | 185 | hours, remainder = divmod(elapsed, 3600) |