test-phases-exchange.t
1825 lines
| 41.5 KiB
| text/troff
|
Tads3Lexer
/ tests / test-phases-exchange.t
|
r33459 | $ cat >> $HGRCPATH << EOF | ||
> [extensions] | ||||
|
r38699 | > drawdag=$TESTDIR/drawdag.py | ||
|
r33459 | > phasereport=$TESTDIR/testlib/ext-phase-report.py | ||
> EOF | ||||
|
r16013 | $ hgph() { hg log -G --template "{rev} {phase} {desc} - {node|short}\n" $*; } | ||
|
r15484 | |||
$ mkcommit() { | ||||
> echo "$1" > "$1" | ||||
> hg add "$1" | ||||
|
r15713 | > message="$1" | ||
> shift | ||||
> hg ci -m "$message" $* | ||||
|
r15484 | > } | ||
$ hg init alpha | ||||
$ cd alpha | ||||
$ mkcommit a-A | ||||
|
r33459 | test-debug-phase: new rev 0: x -> 1 | ||
|
r15484 | $ mkcommit a-B | ||
|
r33459 | test-debug-phase: new rev 1: x -> 1 | ||
|
r15484 | $ mkcommit a-C | ||
|
r33459 | test-debug-phase: new rev 2: x -> 1 | ||
|
r15484 | $ mkcommit a-D | ||
|
r33459 | test-debug-phase: new rev 3: x -> 1 | ||
|
r15484 | $ hgph | ||
|
r15824 | @ 3 draft a-D - b555f63b6063 | ||
| | ||||
o 2 draft a-C - 54acac6f23ab | ||||
| | ||||
o 1 draft a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 draft a-A - 054250a37db4 | ||||
|
r15484 | |||
$ hg init ../beta | ||||
$ hg push -r 1 ../beta | ||||
pushing to ../beta | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 2 changesets with 2 changes to 2 files | ||||
|
r33459 | test-debug-phase: new rev 0: x -> 0 | ||
test-debug-phase: new rev 1: x -> 0 | ||||
test-debug-phase: move rev 0: 1 -> 0 | ||||
test-debug-phase: move rev 1: 1 -> 0 | ||||
|
r15485 | $ hgph | ||
|
r15824 | @ 3 draft a-D - b555f63b6063 | ||
| | ||||
o 2 draft a-C - 54acac6f23ab | ||||
| | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15485 | |||
|
r15484 | $ cd ../beta | ||
$ hgph | ||||
|
r15824 | o 1 public a-B - 548a3d25dbf0 | ||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15484 | $ hg up -q | ||
$ mkcommit b-A | ||||
|
r33459 | test-debug-phase: new rev 2: x -> 1 | ||
|
r15484 | $ hgph | ||
|
r15824 | @ 2 draft b-A - f54f1bb90ff3 | ||
| | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15484 | $ hg pull ../alpha | ||
pulling from ../alpha | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 2 changesets with 2 changes to 2 files (+1 heads) | ||||
|
r34662 | new changesets 54acac6f23ab:b555f63b6063 | ||
|
r33459 | test-debug-phase: new rev 3: x -> 0 | ||
test-debug-phase: new rev 4: x -> 0 | ||||
|
r15484 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
$ hgph | ||||
|
r15824 | o 4 public a-D - b555f63b6063 | ||
| | ||||
o 3 public a-C - 54acac6f23ab | ||||
| | ||||
| @ 2 draft b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15484 | |||
|
r15485 | pull did not updated ../alpha state. | ||
|
r17424 | push from alpha to beta should update phase even if nothing is transferred | ||
|
r15484 | |||
|
r15485 | $ cd ../alpha | ||
$ hgph # not updated by remote pull | ||||
|
r15824 | @ 3 draft a-D - b555f63b6063 | ||
| | ||||
o 2 draft a-C - 54acac6f23ab | ||||
| | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r20314 | $ hg push -r 2 ../beta | ||
pushing to ../beta | ||||
searching for changes | ||||
no changes found | ||||
|
r33459 | test-debug-phase: move rev 2: 1 -> 0 | ||
|
r20314 | [1] | ||
$ hgph | ||||
@ 3 draft a-D - b555f63b6063 | ||||
| | ||||
o 2 public a-C - 54acac6f23ab | ||||
| | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15485 | $ hg push ../beta | ||
pushing to ../beta | ||||
searching for changes | ||||
no changes found | ||||
|
r33459 | test-debug-phase: move rev 3: 1 -> 0 | ||
|
r16023 | [1] | ||
|
r15485 | $ hgph | ||
|
r15824 | @ 3 public a-D - b555f63b6063 | ||
| | ||||
o 2 public a-C - 54acac6f23ab | ||||
| | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15485 | |||
|
r15486 | update must update phase of common changeset too | ||
$ hg pull ../beta # getting b-A | ||||
pulling from ../beta | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files (+1 heads) | ||||
|
r34662 | new changesets f54f1bb90ff3 | ||
|
r33459 | test-debug-phase: new rev 4: x -> 0 | ||
|
r15486 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
$ cd ../beta | ||||
$ hgph # not updated by remote pull | ||||
|
r15824 | o 4 public a-D - b555f63b6063 | ||
| | ||||
o 3 public a-C - 54acac6f23ab | ||||
| | ||||
| @ 2 draft b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15486 | $ hg pull ../alpha | ||
pulling from ../alpha | ||||
searching for changes | ||||
no changes found | ||||
|
r38268 | 1 local changesets published | ||
|
r33459 | test-debug-phase: move rev 2: 1 -> 0 | ||
|
r15486 | $ hgph | ||
|
r15824 | o 4 public a-D - b555f63b6063 | ||
| | ||||
o 3 public a-C - 54acac6f23ab | ||||
| | ||||
| @ 2 public b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15486 | |||
|
r15646 | Publish configuration option | ||
---------------------------- | ||||
|
r15486 | |||
|
r15650 | Pull | ||
```` | ||||
|
r15646 | changegroup are added without phase movement | ||
$ hg bundle -a ../base.bundle | ||||
5 changesets found | ||||
$ cd .. | ||||
$ hg init mu | ||||
$ cd mu | ||||
$ cat > .hg/hgrc << EOF | ||||
> [phases] | ||||
> publish=0 | ||||
> EOF | ||||
$ hg unbundle ../base.bundle | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 5 changesets with 5 changes to 5 files (+1 heads) | ||||
|
r39516 | new changesets 054250a37db4:b555f63b6063 (5 drafts) | ||
|
r33459 | test-debug-phase: new rev 0: x -> 1 | ||
test-debug-phase: new rev 1: x -> 1 | ||||
test-debug-phase: new rev 2: x -> 1 | ||||
test-debug-phase: new rev 3: x -> 1 | ||||
test-debug-phase: new rev 4: x -> 1 | ||||
|
r15646 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
$ hgph | ||||
|
r15824 | o 4 draft a-D - b555f63b6063 | ||
| | ||||
o 3 draft a-C - 54acac6f23ab | ||||
| | ||||
| o 2 draft b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 draft a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 draft a-A - 054250a37db4 | ||||
|
r15647 | $ cd .. | ||
|
r15646 | |||
|
r15650 | Pulling from publish=False to publish=False does not move boundary. | ||
$ hg init nu | ||||
$ cd nu | ||||
$ cat > .hg/hgrc << EOF | ||||
> [phases] | ||||
> publish=0 | ||||
> EOF | ||||
$ hg pull ../mu -r 54acac6f23ab | ||||
pulling from ../mu | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 3 changesets with 3 changes to 3 files | ||||
|
r39516 | new changesets 054250a37db4:54acac6f23ab (3 drafts) | ||
|
r33459 | test-debug-phase: new rev 0: x -> 1 | ||
test-debug-phase: new rev 1: x -> 1 | ||||
test-debug-phase: new rev 2: x -> 1 | ||||
|
r15650 | (run 'hg update' to get a working copy) | ||
$ hgph | ||||
|
r15824 | o 2 draft a-C - 54acac6f23ab | ||
| | ||||
o 1 draft a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 draft a-A - 054250a37db4 | ||||
|
r15650 | |||
Even for common | ||||
$ hg pull ../mu -r f54f1bb90ff3 | ||||
pulling from ../mu | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files (+1 heads) | ||||
|
r39516 | new changesets f54f1bb90ff3 (1 drafts) | ||
|
r33459 | test-debug-phase: new rev 3: x -> 1 | ||
|
r15650 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
$ hgph | ||||
|
r15824 | o 3 draft b-A - f54f1bb90ff3 | ||
| | ||||
| o 2 draft a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 draft a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 draft a-A - 054250a37db4 | ||||
|
r15650 | |||
Pulling from Publish=True to Publish=False move boundary in common set. | ||||
we are in nu | ||||
$ hg pull ../alpha -r b555f63b6063 | ||||
pulling from ../alpha | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
|
r34662 | new changesets b555f63b6063 | ||
|
r38268 | 3 local changesets published | ||
|
r33459 | test-debug-phase: move rev 0: 1 -> 0 | ||
test-debug-phase: move rev 1: 1 -> 0 | ||||
test-debug-phase: move rev 2: 1 -> 0 | ||||
test-debug-phase: new rev 4: x -> 0 | ||||
|
r15650 | (run 'hg update' to get a working copy) | ||
|
r15956 | $ hgph # f54f1bb90ff3 stay draft, not ancestor of -r | ||
|
r15824 | o 4 public a-D - b555f63b6063 | ||
| | ||||
|
r15956 | | o 3 draft b-A - f54f1bb90ff3 | ||
|
r15824 | | | | ||
o | 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15650 | |||
pulling from Publish=False to publish=False with some public | ||||
$ hg up -q f54f1bb90ff3 | ||||
$ mkcommit n-A | ||||
|
r33459 | test-debug-phase: new rev 5: x -> 1 | ||
|
r15650 | $ mkcommit n-B | ||
|
r33459 | test-debug-phase: new rev 6: x -> 1 | ||
|
r15650 | $ hgph | ||
|
r15824 | @ 6 draft n-B - 145e75495359 | ||
| | ||||
o 5 draft n-A - d6bcb4f74035 | ||||
| | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
|
r15956 | o | 3 draft b-A - f54f1bb90ff3 | ||
|
r15824 | | | | ||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15650 | $ cd ../mu | ||
|
r45033 | $ hg pull ../nu --confirm --config ui.interactive=True<<EOF | ||
> y | ||||
> EOF | ||||
|
r15650 | pulling from ../nu | ||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
|
r45033 | adding 2 changesets with 2 changes to 2 files | ||
new changesets d6bcb4f74035:145e75495359 (2 drafts) | ||||
4 local changesets will be published | ||||
accept incoming changes (yn)? y | ||||
|
r15650 | added 2 changesets with 2 changes to 2 files | ||
|
r39516 | new changesets d6bcb4f74035:145e75495359 (2 drafts) | ||
|
r38268 | 4 local changesets published | ||
|
r33459 | test-debug-phase: move rev 0: 1 -> 0 | ||
test-debug-phase: move rev 1: 1 -> 0 | ||||
test-debug-phase: move rev 3: 1 -> 0 | ||||
test-debug-phase: move rev 4: 1 -> 0 | ||||
test-debug-phase: new rev 5: x -> 1 | ||||
test-debug-phase: new rev 6: x -> 1 | ||||
|
r15650 | (run 'hg update' to get a working copy) | ||
$ hgph | ||||
|
r15824 | o 6 draft n-B - 145e75495359 | ||
| | ||||
o 5 draft n-A - d6bcb4f74035 | ||||
| | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
| o 3 public a-C - 54acac6f23ab | ||||
| | | ||||
|
r15956 | o | 2 draft b-A - f54f1bb90ff3 | ||
|
r15824 | |/ | ||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15650 | $ cd .. | ||
pulling into publish=True | ||||
$ cd alpha | ||||
$ hgph | ||||
|
r15824 | o 4 public b-A - f54f1bb90ff3 | ||
| | ||||
| @ 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15650 | $ hg pull ../mu | ||
pulling from ../mu | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 2 changesets with 2 changes to 2 files | ||||
|
r39516 | new changesets d6bcb4f74035:145e75495359 (2 drafts) | ||
|
r33459 | test-debug-phase: new rev 5: x -> 1 | ||
test-debug-phase: new rev 6: x -> 1 | ||||
|
r15650 | (run 'hg update' to get a working copy) | ||
$ hgph | ||||
|
r15824 | o 6 draft n-B - 145e75495359 | ||
| | ||||
o 5 draft n-A - d6bcb4f74035 | ||||
| | ||||
o 4 public b-A - f54f1bb90ff3 | ||||
| | ||||
| @ 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15650 | $ cd .. | ||
pulling back into original repo | ||||
$ cd nu | ||||
$ hg pull ../alpha | ||||
pulling from ../alpha | ||||
searching for changes | ||||
no changes found | ||||
|
r38268 | 3 local changesets published | ||
|
r33459 | test-debug-phase: move rev 3: 1 -> 0 | ||
test-debug-phase: move rev 5: 1 -> 0 | ||||
test-debug-phase: move rev 6: 1 -> 0 | ||||
|
r15650 | $ hgph | ||
|
r15824 | @ 6 public n-B - 145e75495359 | ||
| | ||||
o 5 public n-A - d6bcb4f74035 | ||||
| | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
o | 3 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | |||
Push | ||||
```` | ||||
|
r15659 | (inserted) | ||
Test that phase are pushed even when they are nothing to pus | ||||
(this might be tested later bu are very convenient to not alter too much test) | ||||
Push back to alpha | ||||
$ hg push ../alpha # from nu | ||||
pushing to ../alpha | ||||
searching for changes | ||||
no changes found | ||||
|
r33459 | test-debug-phase: move rev 5: 1 -> 0 | ||
test-debug-phase: move rev 6: 1 -> 0 | ||||
|
r16023 | [1] | ||
|
r15659 | $ cd .. | ||
$ cd alpha | ||||
$ hgph | ||||
|
r15824 | o 6 public n-B - 145e75495359 | ||
| | ||||
o 5 public n-A - d6bcb4f74035 | ||||
| | ||||
o 4 public b-A - f54f1bb90ff3 | ||||
| | ||||
| @ 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15659 | |||
(end insertion) | ||||
|
r15651 | initial setup | ||
|
r20117 | $ hg log -G # of alpha | ||
|
r15651 | o changeset: 6:145e75495359 | ||
| tag: tip | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: n-B | ||||
| | ||||
o changeset: 5:d6bcb4f74035 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: n-A | ||||
| | ||||
o changeset: 4:f54f1bb90ff3 | ||||
| parent: 1:548a3d25dbf0 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: b-A | ||||
| | ||||
| @ changeset: 3:b555f63b6063 | ||||
| | user: test | ||||
| | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | summary: a-D | ||||
| | | ||||
| o changeset: 2:54acac6f23ab | ||||
|/ user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: a-C | ||||
| | ||||
o changeset: 1:548a3d25dbf0 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: a-B | ||||
| | ||||
o changeset: 0:054250a37db4 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a-A | ||||
$ mkcommit a-E | ||||
|
r33459 | test-debug-phase: new rev 7: x -> 1 | ||
|
r15651 | $ mkcommit a-F | ||
|
r33459 | test-debug-phase: new rev 8: x -> 1 | ||
|
r15651 | $ mkcommit a-G | ||
|
r33459 | test-debug-phase: new rev 9: x -> 1 | ||
|
r15651 | $ hg up d6bcb4f74035 -q | ||
$ mkcommit a-H | ||||
|
r33459 | test-debug-phase: new rev 10: x -> 1 | ||
|
r15651 | created new head | ||
$ hgph | ||||
|
r15824 | @ 10 draft a-H - 967b449fbc94 | ||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 draft a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 draft a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | |||
|
r16195 | Pulling from bundle does not alter phases of changeset not present in the bundle | ||
|
r37434 | #if repobundlerepo | ||
|
r16195 | $ hg bundle --base 1 -r 6 -r 3 ../partial-bundle.hg | ||
5 changesets found | ||||
$ hg pull ../partial-bundle.hg | ||||
pulling from ../partial-bundle.hg | ||||
searching for changes | ||||
no changes found | ||||
$ hgph | ||||
@ 10 draft a-H - 967b449fbc94 | ||||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 draft a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 draft a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r37434 | #endif | ||
|
r16195 | |||
|
r15651 | Pushing to Publish=False (unknown changeset) | ||
$ hg push ../mu -r b740e3e5c05d # a-F | ||||
pushing to ../mu | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 2 changesets with 2 changes to 2 files | ||||
|
r33459 | test-debug-phase: new rev 7: x -> 1 | ||
test-debug-phase: new rev 8: x -> 1 | ||||
|
r15651 | $ hgph | ||
|
r15824 | @ 10 draft a-H - 967b449fbc94 | ||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 draft a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 draft a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | |||
$ cd ../mu | ||||
|
r15956 | $ hgph # again f54f1bb90ff3, d6bcb4f74035 and 145e75495359 stay draft, | ||
> # not ancestor of -r | ||||
|
r15824 | o 8 draft a-F - b740e3e5c05d | ||
| | ||||
o 7 draft a-E - e9f537e46dea | ||||
| | ||||
|
r15956 | | o 6 draft n-B - 145e75495359 | ||
|
r15824 | | | | ||
|
r15956 | | o 5 draft n-A - d6bcb4f74035 | ||
|
r15824 | | | | ||
o | 4 public a-D - b555f63b6063 | ||||
| | | ||||
o | 3 public a-C - 54acac6f23ab | ||||
| | | ||||
|
r15956 | | o 2 draft b-A - f54f1bb90ff3 | ||
|
r15824 | |/ | ||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | |||
Pushing to Publish=True (unknown changeset) | ||||
$ hg push ../beta -r b740e3e5c05d | ||||
pushing to ../beta | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 2 changesets with 2 changes to 2 files | ||||
|
r33459 | test-debug-phase: new rev 5: x -> 0 | ||
test-debug-phase: new rev 6: x -> 0 | ||||
test-debug-phase: move rev 7: 1 -> 0 | ||||
test-debug-phase: move rev 8: 1 -> 0 | ||||
|
r15956 | $ hgph # again f54f1bb90ff3, d6bcb4f74035 and 145e75495359 stay draft, | ||
> # not ancestor of -r | ||||
|
r15824 | o 8 public a-F - b740e3e5c05d | ||
| | ||||
o 7 public a-E - e9f537e46dea | ||||
| | ||||
|
r15956 | | o 6 draft n-B - 145e75495359 | ||
|
r15824 | | | | ||
|
r15956 | | o 5 draft n-A - d6bcb4f74035 | ||
|
r15824 | | | | ||
o | 4 public a-D - b555f63b6063 | ||||
| | | ||||
o | 3 public a-C - 54acac6f23ab | ||||
| | | ||||
|
r15956 | | o 2 draft b-A - f54f1bb90ff3 | ||
|
r15824 | |/ | ||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | |||
Pushing to Publish=True (common changeset) | ||||
$ cd ../beta | ||||
$ hg push ../alpha | ||||
pushing to ../alpha | ||||
searching for changes | ||||
no changes found | ||||
|
r33459 | test-debug-phase: move rev 7: 1 -> 0 | ||
test-debug-phase: move rev 8: 1 -> 0 | ||||
|
r16023 | [1] | ||
|
r15651 | $ hgph | ||
|
r15824 | o 6 public a-F - b740e3e5c05d | ||
| | ||||
o 5 public a-E - e9f537e46dea | ||||
| | ||||
o 4 public a-D - b555f63b6063 | ||||
| | ||||
o 3 public a-C - 54acac6f23ab | ||||
| | ||||
| @ 2 public b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | $ cd ../alpha | ||
|
r15956 | $ hgph | ||
|
r15824 | @ 10 draft a-H - 967b449fbc94 | ||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | |||
Pushing to Publish=False (common changeset that change phase + unknown one) | ||||
$ hg push ../mu -r 967b449fbc94 -f | ||||
pushing to ../mu | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files (+1 heads) | ||||
|
r33459 | test-debug-phase: move rev 2: 1 -> 0 | ||
test-debug-phase: move rev 5: 1 -> 0 | ||||
test-debug-phase: new rev 9: x -> 1 | ||||
|
r15651 | $ hgph | ||
|
r15824 | @ 10 draft a-H - 967b449fbc94 | ||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | $ cd ../mu | ||
$ hgph # d6bcb4f74035 should have changed phase | ||||
|
r15956 | > # 145e75495359 is still draft. not ancestor of -r | ||
|
r15824 | o 9 draft a-H - 967b449fbc94 | ||
| | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
|
r15956 | +---o 6 draft n-B - 145e75495359 | ||
|
r15824 | | | | ||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
| o 3 public a-C - 54acac6f23ab | ||||
| | | ||||
o | 2 public b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | |||
Pushing to Publish=True (common changeset from publish=False) | ||||
|
r15713 | (in mu) | ||
|
r15651 | $ hg push ../alpha | ||
pushing to ../alpha | ||||
searching for changes | ||||
no changes found | ||||
|
r33459 | test-debug-phase: move rev 10: 1 -> 0 | ||
test-debug-phase: move rev 6: 1 -> 0 | ||||
test-debug-phase: move rev 9: 1 -> 0 | ||||
|
r16023 | [1] | ||
|
r15651 | $ hgph | ||
|
r15824 | o 9 public a-H - 967b449fbc94 | ||
| | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
| o 3 public a-C - 54acac6f23ab | ||||
| | | ||||
o | 2 public b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | $ hgph -R ../alpha # a-H should have been synced to 0 | ||
|
r15824 | @ 10 public a-H - 967b449fbc94 | ||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15651 | |||
|
r15713 | |||
|
r21010 | Bare push with next changeset and common changeset needing sync (issue3575) | ||
|
r23139 | (reset some stat on remote repo to avoid confusing other tests) | ||
|
r21010 | |||
$ hg -R ../alpha --config extensions.strip= strip --no-backup 967b449fbc94 | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ hg phase --force --draft b740e3e5c05d 967b449fbc94 | ||||
|
r33459 | test-debug-phase: move rev 8: 0 -> 1 | ||
test-debug-phase: move rev 9: 0 -> 1 | ||||
|
r21010 | $ hg push -fv ../alpha | ||
pushing to ../alpha | ||||
searching for changes | ||||
1 changesets found | ||||
|
r23748 | uncompressed size of bundle content: | ||
|
r30211 | 178 (changelog) | ||
|
r27752 | 165 (manifests) | ||
131 a-H | ||||
|
r21010 | adding changesets | ||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files (+1 heads) | ||||
|
r33459 | test-debug-phase: new rev 10: x -> 0 | ||
test-debug-phase: move rev 8: 1 -> 0 | ||||
test-debug-phase: move rev 9: 1 -> 0 | ||||
|
r21010 | $ hgph | ||
o 9 public a-H - 967b449fbc94 | ||||
| | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
| o 3 public a-C - 54acac6f23ab | ||||
| | | ||||
o | 2 public b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
$ hg -R ../alpha update 967b449fbc94 #for latter test consistency | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hgph -R ../alpha | ||||
@ 10 public a-H - 967b449fbc94 | ||||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15713 | Discovery locally secret changeset on a remote repository: | ||
- should make it non-secret | ||||
$ cd ../alpha | ||||
$ mkcommit A-secret --config phases.new-commit=2 | ||||
|
r33459 | test-debug-phase: new rev 11: x -> 2 | ||
|
r15713 | $ hgph | ||
|
r15824 | @ 11 secret A-secret - 435b5d83910c | ||
| | ||||
o 10 public a-H - 967b449fbc94 | ||||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15713 | $ hg bundle --base 'parents(.)' -r . ../secret-bundle.hg | ||
1 changesets found | ||||
$ hg -R ../mu unbundle ../secret-bundle.hg | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
|
r39516 | new changesets 435b5d83910c (1 drafts) | ||
|
r33459 | test-debug-phase: new rev 10: x -> 1 | ||
|
r15713 | (run 'hg update' to get a working copy) | ||
$ hgph -R ../mu | ||||
|
r15824 | o 10 draft A-secret - 435b5d83910c | ||
| | ||||
o 9 public a-H - 967b449fbc94 | ||||
| | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
| o 3 public a-C - 54acac6f23ab | ||||
| | | ||||
o | 2 public b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15713 | $ hg pull ../mu | ||
pulling from ../mu | ||||
searching for changes | ||||
no changes found | ||||
|
r33459 | test-debug-phase: move rev 11: 2 -> 1 | ||
|
r15713 | $ hgph | ||
|
r15824 | @ 11 draft A-secret - 435b5d83910c | ||
| | ||||
o 10 public a-H - 967b449fbc94 | ||||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15889 | |||
|
r21024 | pushing a locally public and draft changesets remotely secret should make them | ||
|
r16535 | appear on the remote side. | ||
|
r15891 | $ hg -R ../mu phase --secret --force 967b449fbc94 | ||
|
r33459 | test-debug-phase: move rev 9: 0 -> 2 | ||
test-debug-phase: move rev 10: 1 -> 2 | ||||
|
r15891 | $ hg push -r 435b5d83910c ../mu | ||
pushing to ../mu | ||||
searching for changes | ||||
|
r46520 | abort: push creates new remote head 435b5d83910c | ||
|
r29973 | (merge or see 'hg help push' for details about pushing new heads) | ||
|
r46735 | [20] | ||
|
r16535 | $ hg push -fr 435b5d83910c ../mu # because the push will create new visible head | ||
pushing to ../mu | ||||
searching for changes | ||||
|
r15891 | adding changesets | ||
adding manifests | ||||
adding file changes | ||||
added 0 changesets with 0 changes to 2 files | ||||
|
r33459 | test-debug-phase: move rev 9: 2 -> 0 | ||
test-debug-phase: move rev 10: 2 -> 1 | ||||
|
r15891 | $ hgph -R ../mu | ||
o 10 draft A-secret - 435b5d83910c | ||||
| | ||||
o 9 public a-H - 967b449fbc94 | ||||
| | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
| o 3 public a-C - 54acac6f23ab | ||||
| | | ||||
o | 2 public b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15889 | pull new changeset with common draft locally | ||
$ hg up -q 967b449fbc94 # create a new root for draft | ||||
$ mkcommit 'alpha-more' | ||||
|
r33459 | test-debug-phase: new rev 12: x -> 1 | ||
|
r15889 | created new head | ||
$ hg push -fr . ../mu | ||||
pushing to ../mu | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files (+1 heads) | ||||
|
r33459 | test-debug-phase: new rev 11: x -> 1 | ||
|
r15889 | $ cd ../mu | ||
$ hg phase --secret --force 1c5cfd894796 | ||||
|
r33459 | test-debug-phase: move rev 11: 1 -> 2 | ||
|
r15889 | $ hg up -q 435b5d83910c | ||
$ mkcommit 'mu-more' | ||||
|
r33459 | test-debug-phase: new rev 12: x -> 1 | ||
|
r15889 | $ cd ../alpha | ||
$ hg pull ../mu | ||||
pulling from ../mu | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
|
r39516 | new changesets 5237fb433fc8 (1 drafts) | ||
|
r33459 | test-debug-phase: new rev 13: x -> 1 | ||
|
r15889 | (run 'hg update' to get a working copy) | ||
$ hgph | ||||
o 13 draft mu-more - 5237fb433fc8 | ||||
| | ||||
| @ 12 draft alpha-more - 1c5cfd894796 | ||||
| | | ||||
o | 11 draft A-secret - 435b5d83910c | ||||
|/ | ||||
o 10 public a-H - 967b449fbc94 | ||||
| | ||||
| o 9 draft a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
Test that test are properly ignored on remote event when existing locally | ||||
|
r15740 | $ cd .. | ||
|
r15889 | $ hg clone -qU -r b555f63b6063 -r f54f1bb90ff3 beta gamma | ||
|
r33459 | test-debug-phase: new rev 0: x -> 0 | ||
test-debug-phase: new rev 1: x -> 0 | ||||
test-debug-phase: new rev 2: x -> 0 | ||||
test-debug-phase: new rev 3: x -> 0 | ||||
test-debug-phase: new rev 4: x -> 0 | ||||
|
r15889 | |||
# pathological case are | ||||
# | ||||
# * secret remotely | ||||
# * known locally | ||||
# * repo have uncommon changeset | ||||
$ hg -R beta phase --secret --force f54f1bb90ff3 | ||||
|
r33459 | test-debug-phase: move rev 2: 0 -> 2 | ||
|
r15889 | $ hg -R gamma phase --draft --force f54f1bb90ff3 | ||
|
r33459 | test-debug-phase: move rev 2: 0 -> 1 | ||
|
r15889 | |||
$ cd gamma | ||||
$ hg pull ../beta | ||||
pulling from ../beta | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 2 changesets with 2 changes to 2 files | ||||
|
r34662 | new changesets e9f537e46dea:b740e3e5c05d | ||
|
r33459 | test-debug-phase: new rev 5: x -> 0 | ||
test-debug-phase: new rev 6: x -> 0 | ||||
|
r15889 | (run 'hg update' to get a working copy) | ||
$ hg phase f54f1bb90ff3 | ||||
2: draft | ||||
same over the wire | ||||
$ cd ../beta | ||||
$ hg serve -p $HGPORT -d --pid-file=../beta.pid -E ../beta-error.log | ||||
$ cat ../beta.pid >> $DAEMON_PIDS | ||||
$ cd ../gamma | ||||
|
r29688 | $ hg pull http://localhost:$HGPORT/ # bundle2+ | ||
|
r25356 | pulling from http://localhost:$HGPORT/ | ||
searching for changes | ||||
no changes found | ||||
$ hg phase f54f1bb90ff3 | ||||
2: draft | ||||
enforce bundle1 | ||||
|
r29687 | $ hg pull http://localhost:$HGPORT/ --config devel.legacy.exchange=bundle1 | ||
|
r15889 | pulling from http://localhost:$HGPORT/ | ||
searching for changes | ||||
no changes found | ||||
$ hg phase f54f1bb90ff3 | ||||
2: draft | ||||
check that secret local on both side are not synced to public | ||||
$ hg push -r b555f63b6063 http://localhost:$HGPORT/ | ||||
pushing to http://localhost:$HGPORT/ | ||||
searching for changes | ||||
no changes found | ||||
|
r16023 | [1] | ||
|
r15889 | $ hg phase f54f1bb90ff3 | ||
2: draft | ||||
|
r38699 | $ killdaemons.py | ||
|
r15889 | put the changeset in the draft state again | ||
(first test after this one expect to be able to copy) | ||||
$ cd .. | ||||
|
r15740 | Test Clone behavior | ||
|
r15713 | |||
|
r15740 | A. Clone without secret changeset | ||
|
r15713 | |||
|
r15740 | 1. cloning non-publishing repository | ||
|
r15889 | (Phase should be preserved) | ||
|
r15740 | |||
|
r15889 | # make sure there is no secret so we can use a copy clone | ||
$ hg -R mu phase --draft 'secret()' | ||||
|
r33459 | test-debug-phase: move rev 11: 2 -> 1 | ||
|
r15740 | |||
$ hg clone -U mu Tau | ||||
$ hgph -R Tau | ||||
|
r15889 | o 12 draft mu-more - 5237fb433fc8 | ||
|
r15824 | | | ||
|
r15889 | | o 11 draft alpha-more - 1c5cfd894796 | ||
| | | ||||
o | 10 draft A-secret - 435b5d83910c | ||||
|/ | ||||
|
r15824 | o 9 public a-H - 967b449fbc94 | ||
| | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
| o 4 public a-D - b555f63b6063 | ||||
| | | ||||
| o 3 public a-C - 54acac6f23ab | ||||
| | | ||||
o | 2 public b-A - f54f1bb90ff3 | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r15740 | |||
|
r15741 | 2. cloning publishing repository | ||
(everything should be public) | ||||
$ hg clone -U alpha Upsilon | ||||
$ hgph -R Upsilon | ||||
|
r15889 | o 13 public mu-more - 5237fb433fc8 | ||
|
r15824 | | | ||
|
r15889 | | o 12 public alpha-more - 1c5cfd894796 | ||
| | | ||||
o | 11 public A-secret - 435b5d83910c | ||||
|/ | ||||
|
r15824 | o 10 public a-H - 967b449fbc94 | ||
| | ||||
| o 9 public a-G - 3e27b6f1eee1 | ||||
| | | ||||
| o 8 public a-F - b740e3e5c05d | ||||
| | | ||||
| o 7 public a-E - e9f537e46dea | ||||
| | | ||||
+---o 6 public n-B - 145e75495359 | ||||
| | | ||||
o | 5 public n-A - d6bcb4f74035 | ||||
| | | ||||
o | 4 public b-A - f54f1bb90ff3 | ||||
| | | ||||
| o 3 public a-D - b555f63b6063 | ||||
| | | ||||
| o 2 public a-C - 54acac6f23ab | ||||
|/ | ||||
o 1 public a-B - 548a3d25dbf0 | ||||
| | ||||
o 0 public a-A - 054250a37db4 | ||||
|
r20008 | #if unix-permissions no-root | ||
|
r19097 | |||
Pushing From an unlockable repo | ||||
-------------------------------- | ||||
(issue3684) | ||||
Unability to lock the source repo should not prevent the push. It will prevent | ||||
the retrieval of remote phase during push. For example, pushing to a publishing | ||||
server won't turn changeset public. | ||||
1. Test that push is not prevented | ||||
$ hg init Phi | ||||
$ cd Upsilon | ||||
$ chmod -R -w .hg | ||||
$ hg push ../Phi | ||||
pushing to ../Phi | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 14 changesets with 14 changes to 14 files (+3 heads) | ||||
|
r33459 | test-debug-phase: new rev 0: x -> 0 | ||
test-debug-phase: new rev 1: x -> 0 | ||||
test-debug-phase: new rev 2: x -> 0 | ||||
test-debug-phase: new rev 3: x -> 0 | ||||
test-debug-phase: new rev 4: x -> 0 | ||||
test-debug-phase: new rev 5: x -> 0 | ||||
test-debug-phase: new rev 6: x -> 0 | ||||
test-debug-phase: new rev 7: x -> 0 | ||||
test-debug-phase: new rev 8: x -> 0 | ||||
test-debug-phase: new rev 9: x -> 0 | ||||
test-debug-phase: new rev 10: x -> 0 | ||||
test-debug-phase: new rev 11: x -> 0 | ||||
test-debug-phase: new rev 12: x -> 0 | ||||
test-debug-phase: new rev 13: x -> 0 | ||||
|
r19097 | $ chmod -R +w .hg | ||
2. Test that failed phases movement are reported | ||||
$ hg phase --force --draft 3 | ||||
|
r33459 | test-debug-phase: move rev 3: 0 -> 1 | ||
test-debug-phase: move rev 7: 0 -> 1 | ||||
test-debug-phase: move rev 8: 0 -> 1 | ||||
test-debug-phase: move rev 9: 0 -> 1 | ||||
|
r19097 | $ chmod -R -w .hg | ||
$ hg push ../Phi | ||||
pushing to ../Phi | ||||
searching for changes | ||||
no changes found | ||||
cannot lock source repo, skipping local public phase update | ||||
[1] | ||||
$ chmod -R +w .hg | ||||
|
r38111 | 3. Test that push is prevented if lock was already acquired (not a permission | ||
error, but EEXIST) | ||||
$ touch .hg/store/lock | ||||
r46636 | $ hg push ../Phi --config ui.timeout=1 --config ui.timeout.warn=0 | |||
|
r38111 | pushing to ../Phi | ||
waiting for lock on repository $TESTTMP/Upsilon held by '' | ||||
abort: repository $TESTTMP/Upsilon: timed out waiting for lock held by '' | ||||
(lock might be very busy) | ||||
|
r46432 | [20] | ||
|
r38111 | $ rm .hg/store/lock | ||
|
r19097 | $ cd .. | ||
|
r30198 | #endif | ||
|
r33508 | Test that clone behaves like pull and doesn't publish changesets as plain push | ||
does. The conditional output accounts for changes in the conditional block | ||||
above. | ||||
|
r30198 | |||
|
r33563 | #if unix-permissions no-root | ||
$ hg -R Upsilon phase -q --force --draft 2 | ||||
test-debug-phase: move rev 2: 0 -> 1 | ||||
#else | ||||
|
r30198 | $ hg -R Upsilon phase -q --force --draft 2 | ||
|
r33459 | test-debug-phase: move rev 2: 0 -> 1 | ||
|
r33563 | test-debug-phase: move rev 3: 0 -> 1 | ||
test-debug-phase: move rev 7: 0 -> 1 | ||||
test-debug-phase: move rev 8: 0 -> 1 | ||||
test-debug-phase: move rev 9: 0 -> 1 | ||||
#endif | ||||
|
r33508 | |||
|
r30198 | $ hg clone -q Upsilon Pi -r 7 | ||
|
r33459 | test-debug-phase: new rev 0: x -> 0 | ||
test-debug-phase: new rev 1: x -> 0 | ||||
test-debug-phase: new rev 2: x -> 0 | ||||
test-debug-phase: new rev 3: x -> 0 | ||||
test-debug-phase: new rev 4: x -> 0 | ||||
|
r30198 | $ hgph Upsilon -r 'min(draft())' | ||
o 2 draft a-C - 54acac6f23ab | ||||
| | ||||
~ | ||||
|
r15889 | |||
|
r30198 | $ hg -R Upsilon push Pi -r 7 | ||
pushing to Pi | ||||
searching for changes | ||||
no changes found | ||||
|
r33459 | test-debug-phase: move rev 2: 1 -> 0 | ||
test-debug-phase: move rev 3: 1 -> 0 | ||||
test-debug-phase: move rev 7: 1 -> 0 | ||||
|
r30198 | [1] | ||
$ hgph Upsilon -r 'min(draft())' | ||||
o 8 draft a-F - b740e3e5c05d | ||||
| | ||||
~ | ||||
$ hg -R Upsilon push Pi -r 8 | ||||
pushing to Pi | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
|
r33459 | test-debug-phase: new rev 5: x -> 0 | ||
test-debug-phase: move rev 8: 1 -> 0 | ||||
|
r30198 | |||
$ hgph Upsilon -r 'min(draft())' | ||||
o 9 draft a-G - 3e27b6f1eee1 | ||||
| | ||||
~ | ||||
|
r38699 | |||
Test phases exchange when a phaseroot is on a merge | ||||
$ hg init mergetest | ||||
$ cd mergetest | ||||
> cat > .hg/hgrc << EOF | ||||
> [phases] | ||||
> publish = false | ||||
> EOF | ||||
$ hg debugdrawdag << EOF | ||||
> E Z | ||||
> |\| | ||||
> D Y | ||||
> | | | ||||
> C X | ||||
> |/ | ||||
> B | ||||
> | | ||||
> A | ||||
> EOF | ||||
test-debug-phase: new rev 0: x -> 1 | ||||
test-debug-phase: new rev 1: x -> 1 | ||||
test-debug-phase: new rev 2: x -> 1 | ||||
test-debug-phase: new rev 3: x -> 1 | ||||
test-debug-phase: new rev 4: x -> 1 | ||||
test-debug-phase: new rev 5: x -> 1 | ||||
test-debug-phase: new rev 6: x -> 1 | ||||
test-debug-phase: new rev 7: x -> 1 | ||||
$ hg phase --public -r D | ||||
test-debug-phase: move rev 0: 1 -> 0 | ||||
test-debug-phase: move rev 1: 1 -> 0 | ||||
test-debug-phase: move rev 2: 1 -> 0 | ||||
test-debug-phase: move rev 4: 1 -> 0 | ||||
$ hg log -G -T '{shortest(node, 5)} {phase}' | ||||
o bb947 draft | ||||
| | ||||
| o 5ac28 draft | ||||
|/| | ||||
o | 13b7b draft | ||||
| | | ||||
| o f5853 public | ||||
| | | ||||
o | c67c4 draft | ||||
| | | ||||
| o 26805 public | ||||
|/ | ||||
o 11247 public | ||||
| | ||||
o 426ba public | ||||
$ cd .. | ||||
Works with default settings | ||||
$ hg -R mergetest serve -p $HGPORT -d --pid-file=hg.pid | ||||
$ cat hg.pid >> $DAEMON_PIDS | ||||
$ hg clone -U http://localhost:$HGPORT mergetest-normal | ||||
requesting all changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 8 changesets with 7 changes to 7 files (+1 heads) | ||||
|
r39516 | new changesets 426bada5c675:bb94757e651a (4 drafts) | ||
|
r38699 | test-debug-phase: new rev 0: x -> 0 | ||
test-debug-phase: new rev 1: x -> 0 | ||||
test-debug-phase: new rev 2: x -> 0 | ||||
test-debug-phase: new rev 3: x -> 1 | ||||
test-debug-phase: new rev 4: x -> 0 | ||||
test-debug-phase: new rev 5: x -> 1 | ||||
test-debug-phase: new rev 6: x -> 1 | ||||
test-debug-phase: new rev 7: x -> 1 | ||||
$ hg -R mergetest-normal log -G -T '{shortest(node, 5)} {phase}' | ||||
o bb947 draft | ||||
| | ||||
| o 5ac28 draft | ||||
|/| | ||||
o | 13b7b draft | ||||
| | | ||||
| o f5853 public | ||||
| | | ||||
o | c67c4 draft | ||||
| | | ||||
| o 26805 public | ||||
|/ | ||||
o 11247 public | ||||
| | ||||
o 426ba public | ||||
$ killdaemons.py | ||||
With legacy listkeys over bundle2 | ||||
|
r38704 | (issue 5939: public phase was lost on 26805 and f5853 before, due to a bug | ||
of phase heads computation) | ||||
|
r38699 | |||
$ hg -R mergetest --config devel.legacy.exchange=phases serve -p $HGPORT -d --pid-file=hg.pid | ||||
$ cat hg.pid >> $DAEMON_PIDS | ||||
$ hg clone -U http://localhost:$HGPORT mergetest-nobinarypart | ||||
requesting all changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 8 changesets with 7 changes to 7 files (+1 heads) | ||||
|
r39516 | new changesets 426bada5c675:bb94757e651a (4 drafts) | ||
|
r38699 | test-debug-phase: new rev 0: x -> 0 | ||
test-debug-phase: new rev 1: x -> 0 | ||||
|
r38704 | test-debug-phase: new rev 2: x -> 0 | ||
|
r38699 | test-debug-phase: new rev 3: x -> 1 | ||
|
r38704 | test-debug-phase: new rev 4: x -> 0 | ||
|
r38699 | test-debug-phase: new rev 5: x -> 1 | ||
test-debug-phase: new rev 6: x -> 1 | ||||
test-debug-phase: new rev 7: x -> 1 | ||||
$ hg -R mergetest-nobinarypart log -G -T '{shortest(node, 5)} {phase}' | ||||
o bb947 draft | ||||
| | ||||
| o 5ac28 draft | ||||
|/| | ||||
o | 13b7b draft | ||||
| | | ||||
|
r38704 | | o f5853 public | ||
|
r38699 | | | | ||
o | c67c4 draft | ||||
| | | ||||
|
r38704 | | o 26805 public | ||
|
r38699 | |/ | ||
o 11247 public | ||||
| | ||||
o 426ba public | ||||
$ killdaemons.py | ||||
Without bundle2 | ||||
|
r38704 | (issue 5939: public phase was lost on 26805 and f5853 before, due to a bug | ||
of phase heads computation) | ||||
|
r38699 | |||
$ hg -R mergetest serve -p $HGPORT -d --pid-file=hg.pid | ||||
$ cat hg.pid >> $DAEMON_PIDS | ||||
$ hg --config devel.legacy.exchange=bundle1 clone -U http://localhost:$HGPORT mergetest-bundle1 | ||||
requesting all changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 8 changesets with 7 changes to 7 files (+1 heads) | ||||
|
r39516 | new changesets 426bada5c675:bb94757e651a (4 drafts) | ||
|
r38699 | test-debug-phase: new rev 0: x -> 0 | ||
test-debug-phase: new rev 1: x -> 0 | ||||
|
r38704 | test-debug-phase: new rev 2: x -> 0 | ||
|
r38699 | test-debug-phase: new rev 3: x -> 1 | ||
|
r38704 | test-debug-phase: new rev 4: x -> 0 | ||
|
r38699 | test-debug-phase: new rev 5: x -> 1 | ||
test-debug-phase: new rev 6: x -> 1 | ||||
test-debug-phase: new rev 7: x -> 1 | ||||
$ hg -R mergetest-bundle1 log -G -T '{shortest(node, 5)} {phase}' | ||||
o bb947 draft | ||||
| | ||||
| o 5ac28 draft | ||||
|/| | ||||
o | 13b7b draft | ||||
| | | ||||
|
r38704 | | o f5853 public | ||
|
r38699 | | | | ||
o | c67c4 draft | ||||
| | | ||||
|
r38704 | | o 26805 public | ||
|
r38699 | |/ | ||
o 11247 public | ||||
| | ||||
o 426ba public | ||||
r40722 | $ killdaemons.py | |||
r40803 | auto-publish config | |||
------------------- | ||||
$ hg init auto-publish-orig | ||||
$ hg clone -q auto-publish-orig auto-publish-clone | ||||
$ cd auto-publish-clone | ||||
$ mkcommit a-p-A | ||||
test-debug-phase: new rev 0: x -> 1 | ||||
$ mkcommit a-p-B | ||||
test-debug-phase: new rev 1: x -> 1 | ||||
abort behavior | ||||
$ hg push --config experimental.auto-publish=abort | ||||
pushing to $TESTTMP/auto-publish-orig | ||||
abort: push would publish 2 changesets | ||||
(use --publish or adjust 'experimental.auto-publish' config) | ||||
[255] | ||||
$ hg push -r '.^' --config experimental.auto-publish=abort | ||||
pushing to $TESTTMP/auto-publish-orig | ||||
abort: push would publish 1 changesets | ||||
(use --publish or adjust 'experimental.auto-publish' config) | ||||
[255] | ||||
--publish flag makes push succeed | ||||
$ hg push -r '.^' --publish --config experimental.auto-publish=abort | ||||
pushing to $TESTTMP/auto-publish-orig | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
test-debug-phase: new rev 0: x -> 0 | ||||
test-debug-phase: move rev 0: 1 -> 0 | ||||
warn behavior | ||||
$ hg push --config experimental.auto-publish=warn | ||||
pushing to $TESTTMP/auto-publish-orig | ||||
1 changesets about to be published | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
test-debug-phase: new rev 1: x -> 0 | ||||
test-debug-phase: move rev 1: 1 -> 0 | ||||
confirm behavior | ||||
$ mkcommit a-p-C | ||||
test-debug-phase: new rev 2: x -> 1 | ||||
$ hg push --config experimental.auto-publish=confirm | ||||
pushing to $TESTTMP/auto-publish-orig | ||||
push and publish 1 changesets (yn)? y | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
test-debug-phase: new rev 2: x -> 0 | ||||
test-debug-phase: move rev 2: 1 -> 0 | ||||
$ cd .. | ||||
r40722 | --publish flag | |||
-------------- | ||||
$ hg init doesnt-publish | ||||
$ cd doesnt-publish | ||||
$ cat > .hg/hgrc << EOF | ||||
> [phases] | ||||
> publish=0 | ||||
> EOF | ||||
$ mkcommit orig-root | ||||
test-debug-phase: new rev 0: x -> 1 | ||||
$ hg phase --public -r 'all()' | ||||
test-debug-phase: move rev 0: 1 -> 0 | ||||
$ cd .. | ||||
$ hg clone -q doesnt-publish client | ||||
$ cd client | ||||
pushing nothing | ||||
$ mkcommit new-A | ||||
test-debug-phase: new rev 1: x -> 1 | ||||
$ mkcommit new-B | ||||
test-debug-phase: new rev 2: x -> 1 | ||||
$ hg push --publish -r null | ||||
pushing to $TESTTMP/doesnt-publish | ||||
searching for changes | ||||
no changes found | ||||
[1] | ||||
$ hgph | ||||
@ 2 draft new-B - 89512e87d697 | ||||
| | ||||
o 1 draft new-A - 4826e44e690e | ||||
| | ||||
o 0 public orig-root - c48edaf99a10 | ||||
pushing a new changeset (selective) | ||||
$ hg push --publish -r 'desc("new-A")' | ||||
pushing to $TESTTMP/doesnt-publish | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
test-debug-phase: new rev 1: x -> 0 | ||||
test-debug-phase: move rev 1: 1 -> 0 | ||||
$ hgph | ||||
@ 2 draft new-B - 89512e87d697 | ||||
| | ||||
o 1 public new-A - 4826e44e690e | ||||
| | ||||
o 0 public orig-root - c48edaf99a10 | ||||
pushing a new changeset (linear) | ||||
$ hg push --publish | ||||
pushing to $TESTTMP/doesnt-publish | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
test-debug-phase: new rev 2: x -> 0 | ||||
test-debug-phase: move rev 2: 1 -> 0 | ||||
$ hgph | ||||
@ 2 public new-B - 89512e87d697 | ||||
| | ||||
o 1 public new-A - 4826e44e690e | ||||
| | ||||
o 0 public orig-root - c48edaf99a10 | ||||
pushing new changesets (different branches) | ||||
$ mkcommit new-C | ||||
test-debug-phase: new rev 3: x -> 1 | ||||
$ hg update -q '.^' | ||||
$ hg branch -q another | ||||
$ mkcommit new-D | ||||
test-debug-phase: new rev 4: x -> 1 | ||||
$ hg push --new-branch --publish | ||||
pushing to $TESTTMP/doesnt-publish | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 2 changesets with 2 changes to 2 files (+1 heads) | ||||
test-debug-phase: new rev 3: x -> 0 | ||||
test-debug-phase: new rev 4: x -> 0 | ||||
test-debug-phase: move rev 3: 1 -> 0 | ||||
test-debug-phase: move rev 4: 1 -> 0 | ||||
$ hgph | ||||
@ 4 public new-D - 5e53dcafd13c | ||||
| | ||||
| o 3 public new-C - 1665482cc06d | ||||
|/ | ||||
o 2 public new-B - 89512e87d697 | ||||
| | ||||
o 1 public new-A - 4826e44e690e | ||||
| | ||||
o 0 public orig-root - c48edaf99a10 | ||||
pushing a shared changeset | ||||
$ mkcommit new-E | ||||
test-debug-phase: new rev 5: x -> 1 | ||||
$ hg push | ||||
pushing to $TESTTMP/doesnt-publish | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
test-debug-phase: new rev 5: x -> 1 | ||||
$ hg push --publish | ||||
pushing to $TESTTMP/doesnt-publish | ||||
searching for changes | ||||
no changes found | ||||
test-debug-phase: move rev 5: 1 -> 0 | ||||
test-debug-phase: move rev 5: 1 -> 0 | ||||
[1] | ||||
$ hgph | ||||
@ 5 public new-E - 48931ee3529c | ||||
| | ||||
o 4 public new-D - 5e53dcafd13c | ||||
| | ||||
| o 3 public new-C - 1665482cc06d | ||||
|/ | ||||
o 2 public new-B - 89512e87d697 | ||||
| | ||||
o 1 public new-A - 4826e44e690e | ||||
| | ||||
o 0 public orig-root - c48edaf99a10 | ||||
$ cd .. | ||||
--publish with subrepos (doesn't propagate to subrepos currently) | ||||
$ hg init with-subrepo | ||||
$ cd with-subrepo | ||||
$ cat > .hg/hgrc << EOF | ||||
> [phases] | ||||
> publish=0 | ||||
> EOF | ||||
$ hg init subrepo | ||||
$ cd subrepo | ||||
$ cat > .hg/hgrc << EOF | ||||
> [phases] | ||||
> publish=0 | ||||
> EOF | ||||
$ echo foo > foo | ||||
$ hg ci -qAm0 | ||||
test-debug-phase: new rev 0: x -> 1 | ||||
$ cd .. | ||||
$ echo 'subrepo = subrepo' > .hgsub | ||||
$ hg add .hgsub | ||||
$ hg ci -m 'Adding subrepo' | ||||
test-debug-phase: new rev 0: x -> 1 | ||||
$ hgph | ||||
@ 0 draft Adding subrepo - 74d5b62379c0 | ||||
$ hgph -R subrepo | ||||
@ 0 draft 0 - 4b3f578e3344 | ||||
$ cd .. | ||||
$ hg clone with-subrepo client-with-subrepo | ||||
updating to branch default | ||||
cloning subrepo subrepo from $TESTTMP/with-subrepo/subrepo | ||||
2 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ cd client-with-subrepo | ||||
$ hg push --publish | ||||
pushing to $TESTTMP/with-subrepo | ||||
no changes made to subrepo subrepo since last push to $TESTTMP/with-subrepo/subrepo | ||||
searching for changes | ||||
no changes found | ||||
test-debug-phase: move rev 0: 1 -> 0 | ||||
test-debug-phase: move rev 0: 1 -> 0 | ||||
[1] | ||||
$ hgph | ||||
@ 0 public Adding subrepo - 74d5b62379c0 | ||||
$ hgph -R subrepo | ||||
@ 0 draft 0 - 4b3f578e3344 | ||||