##// END OF EJS Templates
histedit: make verification configurable...
histedit: make verification configurable Before we can add a 'base' action to histedit need to change verification so that action can specify which steps of verification should run for it. Also it's everything we need for the exec and stop actions implementation. I thought about baking verification into each histedit action (so each of them is responsible for verifying its constraints) but it felt wrong because: - every action would need to know its context (eg. the list of all other actions) - a lot of duplicated work will be added - each action will iterate through all others - the steps of the verification would need to be extracted and named anyway in order to be reused The verifyrules function grows too big now. I plan to refator it in one of the next series.

File last commit:

r26614:ef1eb6df default
r27082:4898e442 default
Show More
test-rebase-bookmarks.t
211 lines | 4.4 KiB | text/troff | Tads3Lexer
/ tests / test-rebase-bookmarks.t
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 $ cat >> $HGRCPATH <<EOF
> [extensions]
> rebase=
>
Pierre-Yves David
phases: prevent rebase to rebase immutable changeset.
r15742 > [phases]
> publish=False
>
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 > [alias]
> tglog = log -G --template "{rev}: '{desc}' bookmarks: {bookmarks}\n"
> EOF
Create a repo with several bookmarks
$ hg init a
$ cd a
$ echo a > a
$ hg ci -Am A
adding a
$ echo b > b
$ hg ci -Am B
adding b
$ hg book 'X'
$ hg book 'Y'
Mads Kiilerich
check-code: fix check for trailing whitespace on empty lines...
r17346
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 $ echo c > c
$ hg ci -Am C
adding c
$ hg book 'Z'
$ hg up -q 0
$ echo d > d
$ hg ci -Am D
adding d
created new head
David Schleimer
bookmarks: correctly update current bookmarks on rebase (issue2277)...
r17046 $ hg book W
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg tglog
David Schleimer
bookmarks: correctly update current bookmarks on rebase (issue2277)...
r17046 @ 3: 'D' bookmarks: W
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 |
| o 2: 'C' bookmarks: Y Z
| |
| o 1: 'B' bookmarks: X
|/
o 0: 'A' bookmarks:
Mads Kiilerich
check-code: fix check for trailing whitespace on empty lines...
r17346
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 Move only rebased bookmarks
$ cd ..
$ hg clone -q a a1
$ cd a1
$ hg up -q Z
Siddharth Agarwal
rebase: delete divergent bookmarks on destination (issue3685)...
r18514 Test deleting divergent bookmarks from dest (issue3685)
$ hg book -r 3 Z@diverge
... and also test that bookmarks not on dest or not being moved aren't deleted
$ hg book -r 3 X@diverge
$ hg book -r 0 Y@diverge
$ hg tglog
o 3: 'D' bookmarks: W X@diverge Z@diverge
|
| @ 2: 'C' bookmarks: Y Z
| |
| o 1: 'B' bookmarks: X
|/
o 0: 'A' bookmarks: Y@diverge
Pierre-Yves David
rebase: do not add second parent to rebased changeset (drop detach option) (BC)...
r17005 $ hg rebase -s Y -d 3
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 2:49cb3485fa0c "C" (Y Z)
Durham Goode
bundles: do not overwrite existing backup bundles (BC)...
r23835 saved backup bundle to $TESTTMP/a1/.hg/strip-backup/49cb3485fa0c-126f3e97-backup.hg (glob)
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg tglog
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 @ 3: 'C' bookmarks: Y Z
|
Siddharth Agarwal
rebase: delete divergent bookmarks on destination (issue3685)...
r18514 o 2: 'D' bookmarks: W X@diverge
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 |
| o 1: 'B' bookmarks: X
|/
Siddharth Agarwal
rebase: delete divergent bookmarks on destination (issue3685)...
r18514 o 0: 'A' bookmarks: Y@diverge
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884
Yuya Nishihara
rebase: do not try to reactivate deleted divergent bookmark...
r20523 Do not try to keep active but deleted divergent bookmark
$ cd ..
$ hg clone -q a a4
$ cd a4
$ hg up -q 2
$ hg book W@diverge
$ hg rebase -s W -d .
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 3:41acb9dca9eb "D" (tip W)
Durham Goode
bundles: do not overwrite existing backup bundles (BC)...
r23835 saved backup bundle to $TESTTMP/a4/.hg/strip-backup/41acb9dca9eb-b35a6a63-backup.hg (glob)
Yuya Nishihara
rebase: do not try to reactivate deleted divergent bookmark...
r20523
$ hg bookmarks
W 3:0d3554f74897
X 1:6c81ed0049f8
Y 2:49cb3485fa0c
Z 2:49cb3485fa0c
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 Keep bookmarks to the correct rebased changeset
$ cd ..
$ hg clone -q a a2
$ cd a2
$ hg up -q Z
$ hg rebase -s 1 -d 3
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 1:6c81ed0049f8 "B" (X)
rebasing 2:49cb3485fa0c "C" (Y Z)
Durham Goode
bundles: do not overwrite existing backup bundles (BC)...
r23835 saved backup bundle to $TESTTMP/a2/.hg/strip-backup/6c81ed0049f8-a687065f-backup.hg (glob)
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg tglog
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 @ 3: 'C' bookmarks: Y Z
|
o 2: 'B' bookmarks: X
|
David Schleimer
bookmarks: correctly update current bookmarks on rebase (issue2277)...
r17046 o 1: 'D' bookmarks: W
Stefano Tortarolo
rebase: reset bookmarks (issue2265 and issue2873)
r14884 |
o 0: 'A' bookmarks:
David Schleimer
bookmarks: correctly update current bookmarks on rebase (issue2277)...
r17046
Keep active bookmark on the correct changeset
$ cd ..
$ hg clone -q a a3
$ cd a3
$ hg up -q X
$ hg rebase -d W
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 1:6c81ed0049f8 "B" (X)
rebasing 2:49cb3485fa0c "C" (Y Z)
Durham Goode
bundles: do not overwrite existing backup bundles (BC)...
r23835 saved backup bundle to $TESTTMP/a3/.hg/strip-backup/6c81ed0049f8-a687065f-backup.hg (glob)
David Schleimer
bookmarks: correctly update current bookmarks on rebase (issue2277)...
r17046
$ hg tglog
Pierre-Yves David
rebase: preserve working directory parent (BC)...
r19925 o 3: 'C' bookmarks: Y Z
David Schleimer
bookmarks: correctly update current bookmarks on rebase (issue2277)...
r17046 |
Pierre-Yves David
rebase: preserve working directory parent (BC)...
r19925 @ 2: 'B' bookmarks: X
David Schleimer
bookmarks: correctly update current bookmarks on rebase (issue2277)...
r17046 |
o 1: 'D' bookmarks: W
|
o 0: 'A' bookmarks:
Pierre-Yves David
rebase: preserve active bookmark when not at head (issue3813)...
r19926 $ hg bookmarks
W 1:41acb9dca9eb
* X 2:e926fccfa8ec
Y 3:3d5fa227f4b5
Z 3:3d5fa227f4b5
Siddharth Agarwal
rebase: derive node from target rev (issue3802)...
r18549 rebase --continue with bookmarks present (issue3802)
$ hg up 2
Pierre-Yves David
rebase: preserve working directory parent (BC)...
r19925 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Siddharth Agarwal
update: when deactivating a bookmark, print a message...
r21404 (leaving bookmark X)
Siddharth Agarwal
rebase: derive node from target rev (issue3802)...
r18549 $ echo 'C' > c
$ hg add c
$ hg ci -m 'other C'
created new head
$ hg up 3
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg rebase
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 3:3d5fa227f4b5 "C" (Y Z)
Siddharth Agarwal
rebase: derive node from target rev (issue3802)...
r18549 merging c
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging c! (edit, then use 'hg resolve --mark')
Augie Fackler
rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
r18933 unresolved conflicts (see hg resolve, then hg rebase --continue)
Augie Fackler
dispatch: exit with status 1 for an InterventionRequired exception (bc)
r18935 [1]
Siddharth Agarwal
rebase: derive node from target rev (issue3802)...
r18549 $ echo 'c' > c
$ hg resolve --mark c
Pierre-Yves David
resolve: add parenthesis around "no more unresolved files" message...
r21947 (no more unresolved files)
Siddharth Agarwal
rebase: derive node from target rev (issue3802)...
r18549 $ hg rebase --continue
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 3:3d5fa227f4b5 "C" (Y Z)
Durham Goode
bundles: do not overwrite existing backup bundles (BC)...
r23835 saved backup bundle to $TESTTMP/a3/.hg/strip-backup/3d5fa227f4b5-c6ea2371-backup.hg (glob)
Siddharth Agarwal
rebase: derive node from target rev (issue3802)...
r18549 $ hg tglog
@ 4: 'C' bookmarks: Y Z
|
o 3: 'other C' bookmarks:
|
o 2: 'B' bookmarks: X
|
o 1: 'D' bookmarks: W
|
o 0: 'A' bookmarks:
David Schleimer
bookmarks: correctly update current bookmarks on rebase (issue2277)...
r17046
Bryan O'Sullivan
rebase: handle bookmarks matching revset function names (issue3950)...
r19641 ensure that bookmarks given the names of revset functions can be used
as --rev arguments (issue3950)
$ hg update -q 3
$ echo bimble > bimble
$ hg add bimble
$ hg commit -q -m 'bisect'
$ echo e >> bimble
$ hg ci -m bisect2
$ echo e >> bimble
$ hg ci -m bisect3
$ hg book bisect
$ hg update -q Y
$ hg rebase -r '"bisect"^^::"bisect"^' -r bisect -d Z
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 5:345c90f326a4 "bisect"
rebasing 6:f677a2907404 "bisect2"
rebasing 7:325c16001345 "bisect3" (tip bisect)
Durham Goode
bundles: do not overwrite existing backup bundles (BC)...
r23835 saved backup bundle to $TESTTMP/a3/.hg/strip-backup/345c90f326a4-b4840586-backup.hg (glob)