Index: repo |
=================================================================== |
--- repo (revision 141980) |
+++ repo (working copy) |
@@ -28,7 +28,7 @@ |
del magic |
# increment this whenever we make important changes to this script |
-VERSION = (1, 13) |
+VERSION = (1, 17) |
# increment this if the MAINTAINER_KEYS block is modified |
KEYRING_VERSION = (1,0) |
@@ -125,6 +125,15 @@ |
group.add_option('--depth', type='int', default=None, |
dest='depth', |
help='create a shallow clone with given depth; see git clone') |
+group.add_option('-g', '--groups', |
+ dest='groups', default='default', |
+ help='restrict manifest projects to ones with a specified group', |
+ metavar='GROUP') |
+group.add_option('-p', '--platform', |
+ dest='platform', default="auto", |
+ help='restrict manifest projects to ones with a specified' |
+ 'platform group [auto|all|none|linux|darwin|...]', |
+ metavar='PLATFORM') |
# Tool |
@@ -139,6 +148,11 @@ |
dest='no_repo_verify', action='store_true', |
help='do not verify repo source code') |
+# Other |
+group = init_optparse.add_option_group('Other options') |
+group.add_option('--config-name', |
+ dest='config_name', action="store_true", default=False, |
+ help='Always prompt for name/e-mail') |
class CloneFailure(Exception): |
"""Indicate the remote clone of repo itself failed. |
@@ -149,7 +163,7 @@ |
"""Installs repo by cloning it over the network. |
""" |
opt, args = init_optparse.parse_args(args) |
- if args or not opt.manifest_url: |
+ if args: |
init_optparse.print_usage() |
sys.exit(1) |
@@ -206,7 +220,17 @@ |
def _CheckGitVersion(): |
cmd = [GIT, '--version'] |
- proc = subprocess.Popen(cmd, stdout=subprocess.PIPE) |
+ try: |
+ proc = subprocess.Popen(cmd, stdout=subprocess.PIPE) |
+ except OSError, e: |
+ print >>sys.stderr |
+ print >>sys.stderr, "fatal: '%s' is not available" % GIT |
+ print >>sys.stderr, 'fatal: %s' % e |
+ print >>sys.stderr |
+ print >>sys.stderr, 'Please make sure %s is installed'\ |
+ ' and in your path.' % GIT |
+ raise CloneFailure() |
+ |
ver_str = proc.stdout.read().strip() |
proc.stdout.close() |
proc.wait() |
@@ -306,11 +330,12 @@ |
n = netrc.netrc() |
for host in n.hosts: |
p = n.hosts[host] |
- mgr.add_password(None, 'http://%s/' % host, p[0], p[2]) |
- mgr.add_password(None, 'https://%s/' % host, p[0], p[2]) |
+ mgr.add_password(p[1], 'http://%s/' % host, p[0], p[2]) |
+ mgr.add_password(p[1], 'https://%s/' % host, p[0], p[2]) |
except: |
pass |
handlers.append(urllib2.HTTPBasicAuthHandler(mgr)) |
+ handlers.append(urllib2.HTTPDigestAuthHandler(mgr)) |
if 'http_proxy' in os.environ: |
url = os.environ['http_proxy'] |