REPO_URL = 'https://chromium.googlesource.com/external/repo'
+REPO_URL = 'https://gerrit.googlesource.com/git-repo'
INT_MANIFEST = 'https://chrome-internal.googlesource.com/chromeos/manifest-internal'
EXT_MANIFEST = 'https://chromium.googlesource.com/chromiumos/manifest'
kwargs['stdout'] = subprocess.PIPE
kwargs['stderr'] = subprocess.PIPE
- print(kwargs.get('cwd', os.getcwd()))
+ #print(kwargs.get('cwd', os.getcwd()))
print(' '.join(cmd))
return subprocess.run(cmd, **kwargs)
def get_repo_topdir(opts):
"""Find the top dir of this repo client checkout."""
topdir = os.getcwd()
- while True:
+ while topdir != '/':
rdir = os.path.join(topdir, '.repo')
if os.path.exists(rdir):
break
topdir = os.path.dirname(topdir)
- assert topdir != '/'
return topdir
def set_git_config(opts):
"""Set .git/config settings in all the repos."""
topdir = get_repo_topdir(opts)
+ assert topdir != '/'
rdir = os.path.join(topdir, '.repo')
def gcfg(path, *args):
branch = expand_branch(opts)
cmd += ['-b', branch]
+ if opts.worktree:
+ cmd += ['--worktree']
+
ret = run(cmd)
if ret.returncode:
return ret.returncode
formatter_class=argparse.RawDescriptionHelpFormatter)
parser.add_argument('-b', '--branch',
help='Switch branches (use "main" to get to ToT)')
- parser.add_argument('-r', '--ref', '--reference', default='~/chromiumos/',
+ parser.add_argument('-r', '--ref', '--reference', #default='~/chromiumos/',
help='Patch to reference repo (default: %(default)s)')
parser.add_argument('-g', '--group',
help='Manifest group to use (e.g. "minilayout")')
help='Manifest file name to use (e.g. "full.xml")')
parser.add_argument('-e', '--email', default='vapier@chromium.org',
help='E-mail address to force (default: %(default)s)')
+ parser.add_argument('--worktree', action='store_true',
+ help='Enable worktree mode')
parser.add_argument('action', nargs='?',
choices={'depot_tools', 'dt', 'int', 'ext'},
help='What to do!')