Add better error messages to git_reparent_branch.
R=dhsharp@chromium.org, vadimsh@chromium.org
BUG=538454
Review URL: https://codereview.chromium.org/1498163002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@297848 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/git_reparent_branch.py b/git_reparent_branch.py
index be44bc6..f9b0442 100755
--- a/git_reparent_branch.py
+++ b/git_reparent_branch.py
@@ -31,6 +31,7 @@
# TODO(iannucci): Allow specification of the branch-to-reparent
branch = current_branch()
+
if opts.root:
new_parent = root_ref
elif opts.lkgr:
@@ -46,6 +47,16 @@
if new_parent == cur_parent:
parser.error('Cannot reparent a branch to its existing parent')
+ if not cur_parent:
+ msg = (
+ "Unable to determine %s@{upstream}.\n\nThis can happen if you didn't use "
+ "`git new-branch` to create the branch and haven't used "
+ "`git branch --set-upstream-to` to assign it one.\n\nPlease assign an "
+ "upstream branch and then run this command again."
+ )
+ print >> sys.stderr, msg % branch
+ return 1
+
mbase = get_or_create_merge_base(branch, cur_parent)
all_tags = tags()