diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2017-03-20 11:16:07 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2017-03-20 11:29:43 +0000 |
commit | 19b9da7bed9416f323793e9c1c7326b483b3d57f (patch) | |
tree | 75333658d443ef702385ef64d9af183fc5fb9962 /setup.py | |
parent | d8575a3ea986a6966cd01e0fa035ca9d426a6736 (diff) |
setup.py: Create a tracking branch for version unless it exists
Change-Id: Ie7832668e0a4adf4dcbf78e49c2af4b65ebe5107
Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'setup.py')
-rw-r--r-- | setup.py | 12 |
1 files changed, 11 insertions, 1 deletions
@@ -370,11 +370,21 @@ def prepareSubModules(): module_dir = m[2] os.chdir(module_dir) currentBranch = '' + branches = set() for line in run_process_output(['git', 'branch']): if line.startswith('* '): currentBranch = line[2:len(line)] - break + else: + branches.add(line.strip()) if currentBranch != module_version: + if not module_version in branches: + print("Creating tracking branch %s for submodule %s" % \ + (module_version, module_name)) + git_create_branch_cmd = ["git", "branch", "--track", module_version, + "origin/" + module_version] + if run_process(git_create_branch_cmd) != 0: + raise DistutilsSetupError("Failed to create a tracking branch %s for %s" % \ + (module_version, module_name)) print("Checking out submodule %s to branch %s (from %s)" % (module_name, module_version, currentBranch)) git_checkout_cmd = ["git", "checkout", module_version] if run_process(git_checkout_cmd) != 0: |