Show More
@@ -645,11 +645,6 b' class phasecache:' | |||
|
645 | 645 | return changes |
|
646 | 646 | |
|
647 | 647 | def retractboundary(self, repo, tr, targetphase, nodes): |
|
648 | oldroots = { | |
|
649 | phase: revs | |
|
650 | for phase, revs in self._phaseroots.items() | |
|
651 | if phase <= targetphase | |
|
652 | } | |
|
653 | 648 | if tr is None: |
|
654 | 649 | phasetracking = None |
|
655 | 650 | else: |
@@ -657,22 +652,8 b' class phasecache:' | |||
|
657 | 652 | repo = repo.unfiltered() |
|
658 | 653 | retracted = self._retractboundary(repo, tr, targetphase, nodes) |
|
659 | 654 | if retracted and phasetracking is not None: |
|
660 | ||
|
661 | # find the affected revisions | |
|
662 | new = self._phaseroots[targetphase] | |
|
663 | old = oldroots[targetphase] | |
|
664 | affected = set(repo.revs(b'(%ld::) - (%ld::)', new, old)) | |
|
665 | ||
|
666 | # find the phase of the affected revision | |
|
667 | for phase in range(targetphase, -1, -1): | |
|
668 | if phase: | |
|
669 | roots = oldroots.get(phase, []) | |
|
670 | revs = set(repo.revs(b'%ld::%ld', roots, affected)) | |
|
671 | affected -= revs | |
|
672 | else: # public phase | |
|
673 | revs = affected | |
|
674 | for r in sorted(revs): | |
|
675 | _trackphasechange(phasetracking, r, phase, targetphase) | |
|
655 | for r, old_phase in sorted(retracted.items()): | |
|
656 | _trackphasechange(phasetracking, r, old_phase, targetphase) | |
|
676 | 657 | repo.invalidatevolatilesets() |
|
677 | 658 | |
|
678 | 659 | def _retractboundary(self, repo, tr, targetphase, nodes=None, revs=None): |
@@ -1595,7 +1595,6 b' abort behavior' | |||
|
1595 | 1595 | trying to push a secret changeset doesn't confuse auto-publish |
|
1596 | 1596 | |
|
1597 | 1597 | $ hg phase --secret --force |
|
1598 | test-debug-phase: move rev 0: 1 -> 2 | |
|
1599 | 1598 | test-debug-phase: move rev 1: 1 -> 2 |
|
1600 | 1599 | |
|
1601 | 1600 | $ hg push --config experimental.auto-publish=abort |
@@ -54,9 +54,7 b' Following commit are draft too' | |||
|
54 | 54 | Working directory phase is secret when its parent is secret. |
|
55 | 55 | |
|
56 | 56 | $ hg phase --force --secret . |
|
57 | test-debug-phase: move rev 0: 1 -> 2 | |
|
58 | 57 | test-debug-phase: move rev 1: 1 -> 2 |
|
59 | test-hook-close-phase: 4a2df7238c3b48766b5e22fafbb8a2f506ec8256: draft -> secret | |
|
60 | 58 | test-hook-close-phase: 27547f69f25460a52fff66ad004e58da7ad3fb56: draft -> secret |
|
61 | 59 | $ hg log -r 'wdir()' -T '{phase}\n' |
|
62 | 60 | secret |
General Comments 0
You need to be logged in to leave comments.
Login now