[PATCH 03 of 10] rebase: improve error message for empty --source set

Mads Kiilerich mads at kiilerich.com
Sun Jan 12 10:08:01 CST 2014


# HG changeset patch
# User Mads Kiilerich <madski at unity3d.com>
# Date 1384730518 18000
#      Sun Nov 17 18:21:58 2013 -0500
# Node ID ef40ccf4914c597e32885227dde08abe40e41ad5
# Parent  d4c3a8ae89b0e2bf1e8a0bebb3fd6ba49ad1ac62
rebase: improve error message for empty --source set

Before it just said 'nothing to rebase', now it hints to the reason: '--source
revset is empty - nothing to rebase'.

diff --git a/hgext/rebase.py b/hgext/rebase.py
--- a/hgext/rebase.py
+++ b/hgext/rebase.py
@@ -226,7 +226,12 @@ def rebase(ui, repo, **opts):
                     return 1
             elif srcf:
                 src = scmutil.revrange(repo, [srcf])
+                if not src:
+                    ui.status(_('nothing to rebase - '
+                                'source revset is empty\n'))
+                    return 1
                 rebaseset = repo.revs('(%ld)::', src)
+                assert rebaseset
             else:
                 base = scmutil.revrange(repo, [basef or '.'])
                 rebaseset = repo.revs(
diff --git a/tests/test-rebase-parameters.t b/tests/test-rebase-parameters.t
--- a/tests/test-rebase-parameters.t
+++ b/tests/test-rebase-parameters.t
@@ -93,6 +93,10 @@ These fail:
   nothing to rebase - rev revset is empty
   [1]
 
+  $ hg rebase --source '1 & !1'
+  nothing to rebase - source revset is empty
+  [1]
+
 
 These work:
 


More information about the Mercurial-devel mailing list