diff --git a/mercurial/repair.py b/mercurial/repair.py index 52dfa1eb0ad4f6141849a88b8389f5e08c44cf0b_bWVyY3VyaWFsL3JlcGFpci5weQ==..b2ec79559a4bbc8388aa66416b5a4f34a7bdfa01_bWVyY3VyaWFsL3JlcGFpci5weQ== 100644 --- a/mercurial/repair.py +++ b/mercurial/repair.py @@ -24,6 +24,7 @@ exchange, obsolete, obsutil, + phases, pycompat, util, ) @@ -276,7 +277,8 @@ # orphaned = affected - wanted # affected = descendants(roots(wanted)) # wanted = revs - tostrip = set(repo.revs('%ld-(::((roots(%ld)::)-%ld))', revs, revs, revs)) + revset = '%ld - ( ::( (roots(%ld):: and not _phase(%s)) -%ld) )' + tostrip = set(repo.revs(revset, revs, revs, phases.internal, revs)) notstrip = revs - tostrip if notstrip: nodestr = ', '.join(sorted(short(repo[n].node()) for n in notstrip)) diff --git a/tests/test-shelve.t b/tests/test-shelve.t index 52dfa1eb0ad4f6141849a88b8389f5e08c44cf0b_dGVzdHMvdGVzdC1zaGVsdmUudA==..b2ec79559a4bbc8388aa66416b5a4f34a7bdfa01_dGVzdHMvdGVzdC1zaGVsdmUudA== 100644 --- a/tests/test-shelve.t +++ b/tests/test-shelve.t @@ -669,5 +669,4 @@ shelved as default 1 files updated, 0 files merged, 0 files removed, 0 files unresolved -#if phasebased $ hg rebase -d 6c103be8f4e4 --config extensions.rebase= @@ -673,3 +672,3 @@ $ hg rebase -d 6c103be8f4e4 --config extensions.rebase= - rebasing 2:323bfa07f744 "xyz" + rebasing 2:323bfa07f744 "xyz"( \(tip\))? (re) merging x @@ -675,13 +674,5 @@ merging x - warning: orphaned descendants detected, not stripping 323bfa07f744 (?) -#endif - -#if stripbased - $ hg rebase -d 6c103be8f4e4 --config extensions.rebase= - rebasing 2:323bfa07f744 "xyz" (tip) - merging x - saved backup bundle to $TESTTMP/shelverebase/.hg/strip-backup/323bfa07f744-78114325-rebase.hg -#endif + saved backup bundle to \$TESTTMP/shelverebase/.hg/strip-backup/323bfa07f744-(78114325|7ae538ef)-rebase.hg (re) $ hg unshelve unshelving change 'default' rebasing shelved changes