diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/lib/devtool/upgrade.py | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/scripts/lib/devtool/upgrade.py b/scripts/lib/devtool/upgrade.py index 5a057e95f5..4605355681 100644 --- a/scripts/lib/devtool/upgrade.py +++ b/scripts/lib/devtool/upgrade.py | |||
@@ -260,21 +260,20 @@ def _extract_new_source(newpv, srctree, no_patch, srcrev, srcbranch, branch, kee | |||
260 | logger.warning('By user choice, the following patches will NOT be applied to the new source tree:\n %s' % '\n '.join([os.path.basename(patch) for patch in patches])) | 260 | logger.warning('By user choice, the following patches will NOT be applied to the new source tree:\n %s' % '\n '.join([os.path.basename(patch) for patch in patches])) |
261 | else: | 261 | else: |
262 | __run('git checkout devtool-patched -b %s' % branch) | 262 | __run('git checkout devtool-patched -b %s' % branch) |
263 | skiptag = False | 263 | (stdout, _) = __run('git branch --list devtool-override-*') |
264 | try: | 264 | branches_to_rebase = [branch] + stdout.split() |
265 | __run('git rebase %s' % rev) | 265 | for b in branches_to_rebase: |
266 | except bb.process.ExecutionError as e: | 266 | logger.info("Rebasing {} onto {}".format(b, rev)) |
267 | skiptag = True | 267 | __run('git checkout %s' % b) |
268 | if 'conflict' in e.stdout: | 268 | try: |
269 | logger.warning('Command \'%s\' failed:\n%s\n\nYou will need to resolve conflicts in order to complete the upgrade.' % (e.command, e.stdout.rstrip())) | 269 | __run('git rebase %s' % rev) |
270 | else: | 270 | except bb.process.ExecutionError as e: |
271 | logger.warning('Command \'%s\' failed:\n%s' % (e.command, e.stdout)) | 271 | if 'conflict' in e.stdout: |
272 | if not skiptag: | 272 | logger.warning('Command \'%s\' failed:\n%s\n\nYou will need to resolve conflicts in order to complete the upgrade.' % (e.command, e.stdout.rstrip())) |
273 | if uri.startswith('git://') or uri.startswith('gitsm://'): | 273 | __run('git rebase --abort') |
274 | suffix = 'new' | 274 | else: |
275 | else: | 275 | logger.warning('Command \'%s\' failed:\n%s' % (e.command, e.stdout)) |
276 | suffix = newpv | 276 | __run('git checkout %s' % branch) |
277 | __run('git tag -f devtool-patched-%s' % suffix) | ||
278 | 277 | ||
279 | if tmpsrctree: | 278 | if tmpsrctree: |
280 | if keep_temp: | 279 | if keep_temp: |