Commit 9f273d01 authored by Henrique Ferreiro's avatar Henrique Ferreiro Committed by Commit Bot

Limit the rebase-update call after reparent-branch

Previously, `git reparent-branch` would call `git rebase-update
--no-fetch` effectively rebasing all branches. Limit the branches to
update to the one being moved and its dependants.

Change-Id: Ifb9f5b0ab4afe18f9c642ca47d683d9f3745bede
Reviewed-on: https://chromium-review.googlesource.com/c/1476393
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: 's avatarRobbie Iannucci <iannucci@chromium.org>
parent 3acdefa9
......@@ -12,6 +12,7 @@ import subprocess2
from git_common import upstream, current_branch, run, tags, set_branch_config
from git_common import get_or_create_merge_base, root, manual_merge_base
from git_common import get_branch_tree, topo_iter
import git_rebase_update
......@@ -81,8 +82,13 @@ def main(args):
manual_merge_base(branch, mbase, new_parent)
# TODO(iannucci): ONLY rebase-update the branch which moved (and dependants)
return git_rebase_update.main(['--no-fetch'])
# ONLY rebase-update the branch which moved (and dependants)
_, branch_tree = get_branch_tree()
branches = [branch]
for branch, parent in topo_iter(branch_tree):
if parent in branches:
branches.append(branch)
return git_rebase_update.main(['--no-fetch'] + branches)
if __name__ == '__main__': # pragma: no cover
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment