##// END OF EJS Templates
wireprotov2: define and implement "manifestdata" command...
wireprotov2: define and implement "manifestdata" command The added command can be used for obtaining manifest data. Given a manifest path and set of manifest nodes, data about manifests can be retrieved. Unlike changeset data, we wish to emit deltas to describe manifest revisions. So the command uses the relatively new API for building delta requests and emitting them. The code calls into deltaparent(), which I'm not very keen of. There's still work to be done in delta generation land so implementation details of storage (e.g. exactly one delta is stored/available) don't creep into higher levels. But we can worry about this later (there is already a TODO on imanifestorage tracking this). On the subject of parent deltas, the server assumes parent revisions exist on the receiving end. This is obviously wrong for shallow clone. I've added TODOs to add a mechanism to the command to allow clients to specify desired behavior. This shouldn't be too difficult to implement. Another big change is that the client must explicitly request manifest nodes to retrieve. This is a major departure from "getbundle," where the server derives relevant manifests as it iterates changesets and sends them automatically. As implemented, the client must transmit each requested node to the server. At 20 bytes per node, we're looking at 2 MB per 100,000 nodes. Plus wire encoding overhead. This isn't ideal for clients with limited upload bandwidth. I plan to address this in the future by allowing alternate mechanisms for defining the revisions to retrieve. One idea is to define a range of changeset revisions whose manifest revisions to retrieve (similar to how "changesetdata" works). We almost certainly want an API to look up an individual manifest by node. And that's where I've chosen to start with the implementation. Again, a theme of this early exchangev2 work is I want to start by building primitives for accessing raw repository data first and see how far we can get with those before we need more complexity. Differential Revision: https://phab.mercurial-scm.org/D4488

File last commit:

r38745:2009d84f default
r39673:c7a7c7e8 default
Show More
test-rebase-interruptions.t
480 lines | 10.2 KiB | text/troff | Tads3Lexer
/ tests / test-rebase-interruptions.t
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ cat >> $HGRCPATH <<EOF
> [extensions]
> rebase=
>
Pierre-Yves David
phases: prevent rebase to rebase immutable changeset.
r15742 > [phases]
> publish=False
>
Adrian Buehlmann
tests: unify test-rebase*
r12608 > [alias]
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 > tglog = log -G --template "{rev}: {node|short} '{desc}' {branches}\n"
> tglogp = log -G --template "{rev}: {node|short} {phase} '{desc}' {branches}\n"
Adrian Buehlmann
tests: unify test-rebase*
r12608 > EOF
$ hg init a
$ cd a
$ echo A > A
$ hg ci -Am A
adding A
$ echo B > B
$ hg ci -Am B
adding B
$ echo C >> A
$ hg ci -m C
$ hg up -q -C 0
$ echo D >> A
$ hg ci -m D
created new head
$ echo E > E
$ hg ci -Am E
adding E
$ cd ..
Changes during an interruption - continue:
$ hg clone -q -u . a a1
$ cd a1
$ hg tglog
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 4: ae36e8e3dfd7 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: 46b37eabc604 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
Rebasing B onto E:
$ hg rebase -s 1 -d 4
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 1:27547f69f254 "B"
rebasing 2:965c486023db "C"
Adrian Buehlmann
tests: unify test-rebase*
r12608 merging A
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging A! (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]
Adrian Buehlmann
tests: unify test-rebase*
r12608
Force a commit on C during the interruption:
Matt Mackall
rebase: add checkunfinished support (issue3955)
r19478 $ hg up -q -C 2 --config 'extensions.rebase=!'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ echo 'Extra' > Extra
$ hg add Extra
Matt Mackall
rebase: add checkunfinished support (issue3955)
r19478 $ hg ci -m 'Extra' --config 'extensions.rebase=!'
Adrian Buehlmann
tests: unify test-rebase*
r12608
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 Force this commit onto secret phase
$ hg phase --force --secret 6
$ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 6: deb5d2f93d8b secret 'Extra'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 5: 45396c49d53b draft 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 4: ae36e8e3dfd7 draft 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 3: 46b37eabc604 draft 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 2: 965c486023db draft 'C'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 1: 27547f69f254 draft 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b draft 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
Resume the rebasing:
$ hg rebase --continue
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 already rebased 1:27547f69f254 "B" as 45396c49d53b
rebasing 2:965c486023db "C"
Adrian Buehlmann
tests: unify test-rebase*
r12608 merging A
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging A! (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]
Adrian Buehlmann
tests: unify test-rebase*
r12608
Solve the conflict and go on:
$ echo 'conflict solved' > A
$ rm A.orig
$ hg resolve -m A
Pierre-Yves David
resolve: add parenthesis around "no more unresolved files" message...
r21947 (no more unresolved files)
timeless
rebase: hook afterresolvedstates
r27626 continue: hg rebase --continue
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg rebase --continue
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 already rebased 1:27547f69f254 "B" as 45396c49d53b
rebasing 2:965c486023db "C"
Jun Wu
rebase: use scmutil.cleanupnodes (issue5606) (BC)...
r33332 warning: orphaned descendants detected, not stripping 27547f69f254, 965c486023db
Adrian Buehlmann
tests: unify test-rebase*
r12608
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 $ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 7: d2d25e26288e draft 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 6: deb5d2f93d8b secret 'Extra'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 5: 45396c49d53b draft 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ | 4: ae36e8e3dfd7 draft 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 3: 46b37eabc604 draft 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db draft 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 draft 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b draft 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Changes during an interruption - abort:
$ hg clone -q -u . a a2
$ cd a2
$ hg tglog
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 4: ae36e8e3dfd7 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: 46b37eabc604 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
Rebasing B onto E:
$ hg rebase -s 1 -d 4
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 1:27547f69f254 "B"
rebasing 2:965c486023db "C"
Adrian Buehlmann
tests: unify test-rebase*
r12608 merging A
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging A! (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]
Adrian Buehlmann
tests: unify test-rebase*
r12608
Force a commit on B' during the interruption:
Matt Mackall
rebase: add checkunfinished support (issue3955)
r19478 $ hg up -q -C 5 --config 'extensions.rebase=!'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ echo 'Extra' > Extra
$ hg add Extra
Matt Mackall
rebase: add checkunfinished support (issue3955)
r19478 $ hg ci -m 'Extra' --config 'extensions.rebase=!'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 6: 402ee3642b59 'Extra'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 5: 45396c49d53b 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 4: ae36e8e3dfd7 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: 46b37eabc604 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
Abort the rebasing:
$ hg rebase --abort
Martin von Zweigbergk
rebase: rename "target" to "destination" in messages...
r32249 warning: new changesets detected on destination branch, can't strip
Matt Mackall
rebase: allow aborting when descendants detected...
r19518 rebase aborted
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 6: 402ee3642b59 'Extra'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 5: 45396c49d53b 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 4: ae36e8e3dfd7 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: 46b37eabc604 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 Changes during an interruption - abort (again):
$ hg clone -q -u . a a3
$ cd a3
$ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 4: ae36e8e3dfd7 draft 'E'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: 46b37eabc604 draft 'D'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db draft 'C'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 draft 'B'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b draft 'A'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917
Rebasing B onto E:
$ hg rebase -s 1 -d 4
Mads Kiilerich
rebase: show more useful status information while rebasing...
r23517 rebasing 1:27547f69f254 "B"
rebasing 2:965c486023db "C"
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 merging A
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging A! (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]
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917
Change phase on B and B'
Matt Mackall
rebase: add checkunfinished support (issue3955)
r19478 $ hg up -q -C 5 --config 'extensions.rebase=!'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 $ hg phase --public 1
$ hg phase --public 5
$ hg phase --secret -f 2
$ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 5: 45396c49d53b public 'B'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 4: ae36e8e3dfd7 public 'E'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: 46b37eabc604 public 'D'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db secret 'C'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 public 'B'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b public 'A'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917
Abort the rebasing:
$ hg rebase --abort
Jordi Gutiérrez Hermoso
phases: rewrite "immutable changeset" to "public changeset"...
r25411 warning: can't clean up public changesets 45396c49d53b
Matt Mackall
rebase: continue abort without strip for immutable csets (issue3997)...
r19517 rebase aborted
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917
$ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 5: 45396c49d53b public 'B'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 4: ae36e8e3dfd7 public 'E'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: 46b37eabc604 public 'D'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db secret 'C'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 public 'B'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b public 'A'
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 Test rebase interrupted by hooks
rebase: provides test case for (issue5610)...
r33137
$ hg up 2
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ echo F > F
$ hg add F
$ hg ci -m F
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138
$ cd ..
(precommit version)
$ cp -R a3 hook-precommit
$ cd hook-precommit
$ hg rebase --source 2 --dest 5 --tool internal:other --config 'hooks.precommit=hg status | grep "M A"'
rebasing 2:965c486023db "C"
M A
rebasing 6:a0b2430ebfb8 "F" (tip)
abort: precommit hook exited with status 1
[255]
$ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 7: 401ccec5e39f secret 'C'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | @ 6: a0b2430ebfb8 secret 'F'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 5: 45396c49d53b public 'B'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 4: ae36e8e3dfd7 public 'E'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 3: 46b37eabc604 public 'D'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db secret 'C'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 public 'B'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b public 'A'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138
$ hg rebase --continue
already rebased 2:965c486023db "C" as 401ccec5e39f
rebasing 6:a0b2430ebfb8 "F"
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 saved backup bundle to $TESTTMP/hook-precommit/.hg/strip-backup/965c486023db-aa6250e7-rebase.hg
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 $ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 6: 6e92a149ac6b secret 'F'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 5: 401ccec5e39f secret 'C'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 4: 45396c49d53b public 'B'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: ae36e8e3dfd7 public 'E'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 2: 46b37eabc604 public 'D'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 public 'B'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b public 'A'
rebase: reinforce testing around precommit hook interrupting a rebase...
r33138
$ cd ..
(pretxncommit version)
$ cp -R a3 hook-pretxncommit
$ cd hook-pretxncommit
Matt Harbison
hook: disable the shell to native command translation by default...
r38745 $ hg rebase --source 2 --dest 5 --tool internal:other \
> --config 'hooks.tonative.pretxncommit=True' --config 'hooks.pretxncommit=hg log -r $HG_NODE | grep "summary: C"'
rebase: provides test case for (issue5610)...
r33137 rebasing 2:965c486023db "C"
summary: C
rebasing 6:a0b2430ebfb8 "F" (tip)
transaction abort!
rollback completed
abort: pretxncommit hook exited with status 1
[255]
$ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 7: 401ccec5e39f secret 'C'
rebase: provides test case for (issue5610)...
r33137 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | @ 6: a0b2430ebfb8 secret 'F'
rebase: provides test case for (issue5610)...
r33137 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 5: 45396c49d53b public 'B'
rebase: provides test case for (issue5610)...
r33137 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 4: ae36e8e3dfd7 public 'E'
rebase: provides test case for (issue5610)...
r33137 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 3: 46b37eabc604 public 'D'
rebase: provides test case for (issue5610)...
r33137 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db secret 'C'
rebase: provides test case for (issue5610)...
r33137 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 public 'B'
rebase: provides test case for (issue5610)...
r33137 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b public 'A'
rebase: provides test case for (issue5610)...
r33137
$ hg rebase --continue
already rebased 2:965c486023db "C" as 401ccec5e39f
rebasing 6:a0b2430ebfb8 "F"
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 saved backup bundle to $TESTTMP/hook-pretxncommit/.hg/strip-backup/965c486023db-aa6250e7-rebase.hg
rebase: provides test case for (issue5610)...
r33137 $ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 6: 6e92a149ac6b secret 'F'
rebase: provides test case for (issue5610)...
r33137 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 5: 401ccec5e39f secret 'C'
rebase: provides test case for (issue5610)...
r33137 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 4: 45396c49d53b public 'B'
rebase: provides test case for (issue5610)...
r33137 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: ae36e8e3dfd7 public 'E'
rebase: provides test case for (issue5610)...
r33137 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 2: 46b37eabc604 public 'D'
rebase: provides test case for (issue5610)...
r33137 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 public 'B'
rebase: provides test case for (issue5610)...
r33137 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b public 'A'
rebase: provides test case for (issue5610)...
r33137
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
rebase: fix phases movement...
r15917 $ cd ..
rebase: also test abort from pretxnclose error...
r33139
(pretxnclose version)
$ cp -R a3 hook-pretxnclose
$ cd hook-pretxnclose
$ hg rebase --source 2 --dest 5 --tool internal:other --config 'hooks.pretxnclose=hg log -r tip | grep "summary: C"'
rebasing 2:965c486023db "C"
summary: C
rebasing 6:a0b2430ebfb8 "F" (tip)
transaction abort!
rollback completed
abort: pretxnclose hook exited with status 1
[255]
$ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 7: 401ccec5e39f secret 'C'
rebase: also test abort from pretxnclose error...
r33139 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | @ 6: a0b2430ebfb8 secret 'F'
rebase: also test abort from pretxnclose error...
r33139 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 5: 45396c49d53b public 'B'
rebase: also test abort from pretxnclose error...
r33139 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 4: ae36e8e3dfd7 public 'E'
rebase: also test abort from pretxnclose error...
r33139 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o | 3: 46b37eabc604 public 'D'
rebase: also test abort from pretxnclose error...
r33139 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 2: 965c486023db secret 'C'
rebase: also test abort from pretxnclose error...
r33139 | |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 public 'B'
rebase: also test abort from pretxnclose error...
r33139 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b public 'A'
rebase: also test abort from pretxnclose error...
r33139
$ hg rebase --continue
already rebased 2:965c486023db "C" as 401ccec5e39f
rebasing 6:a0b2430ebfb8 "F"
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 saved backup bundle to $TESTTMP/hook-pretxnclose/.hg/strip-backup/965c486023db-aa6250e7-rebase.hg
rebase: also test abort from pretxnclose error...
r33139 $ hg tglogp
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 @ 6: 6e92a149ac6b secret 'F'
rebase: also test abort from pretxnclose error...
r33139 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 5: 401ccec5e39f secret 'C'
rebase: also test abort from pretxnclose error...
r33139 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 4: 45396c49d53b public 'B'
rebase: also test abort from pretxnclose error...
r33139 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 3: ae36e8e3dfd7 public 'E'
rebase: also test abort from pretxnclose error...
r33139 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 2: 46b37eabc604 public 'D'
rebase: also test abort from pretxnclose error...
r33139 |
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 | o 1: 27547f69f254 public 'B'
rebase: also test abort from pretxnclose error...
r33139 |/
Phil Cohen
tests: add commit hashes to log commands in rebase tests...
r35386 o 0: 4a2df7238c3b public 'A'
rebase: also test abort from pretxnclose error...
r33139
$ cd ..
Jeremy Fitzhardinge
rebase: make sure merge state is cleaned up for no-op rebases (issue5494)...
r32313
Make sure merge state is cleaned up after a no-op rebase merge (issue5494)
$ hg init repo
$ cd repo
$ echo a > a
$ hg commit -qAm base
$ echo b >> a
$ hg commit -qm b
$ hg up '.^'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo c >> a
$ hg commit -qm c
$ hg rebase -s 1 -d 2 --noninteractive
rebasing 1:fdaca8533b86 "b"
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
unresolved conflicts (see hg resolve, then hg rebase --continue)
[1]
$ echo a > a
$ echo c >> a
$ hg resolve --mark a
(no more unresolved files)
continue: hg rebase --continue
$ hg rebase --continue
rebasing 1:fdaca8533b86 "b"
note: rebase of 1:fdaca8533b86 created no changes to commit
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 saved backup bundle to $TESTTMP/repo/.hg/strip-backup/fdaca8533b86-7fd70513-rebase.hg
Jeremy Fitzhardinge
rebase: make sure merge state is cleaned up for no-op rebases (issue5494)...
r32313 $ hg resolve --list
Martin von Zweigbergk
tests: .hg/merge is a directory, so use `test -d`...
r36794 $ test -d .hg/merge
Jeremy Fitzhardinge
rebase: make sure merge state is cleaned up for no-op rebases (issue5494)...
r32313 [1]
Martin von Zweigbergk
tests: add test for issue 5494 but with --collapse...
r36795 Now try again with --collapse
$ hg unbundle -q .hg/strip-backup/fdaca8533b86-7fd70513-rebase.hg
$ hg rebase -s 2 -d 1 --noninteractive --collapse
rebasing 2:fdaca8533b86 "b" (tip)
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
unresolved conflicts (see hg resolve, then hg rebase --continue)
[1]
$ echo a > a
$ echo c >> a
$ hg resolve --mark a
(no more unresolved files)
continue: hg rebase --continue
$ hg rebase --continue
rebasing 2:fdaca8533b86 "b" (tip)
saved backup bundle to $TESTTMP/repo/.hg/strip-backup/fdaca8533b86-7fd70513-rebase.hg
$ hg resolve --list
$ test -d .hg/merge
Martin von Zweigbergk
rebase: fix issue 5494 also with --collapse...
r36946 [1]