diff options
Diffstat (limited to 'tests/test-bookmarks-pushpull.t')
-rw-r--r-- | tests/test-bookmarks-pushpull.t | 135 |
1 files changed, 15 insertions, 120 deletions
diff --git a/tests/test-bookmarks-pushpull.t b/tests/test-bookmarks-pushpull.t index b62ca47..1670897 100644 --- a/tests/test-bookmarks-pushpull.t +++ b/tests/test-bookmarks-pushpull.t @@ -1,5 +1,3 @@ - $ "$TESTDIR/hghave" serve || exit 80 - initialize $ hg init a @@ -29,16 +27,11 @@ import bookmark by name adding file changes added 1 changesets with 1 changes to 1 files updating bookmark Y - adding remote bookmark X - adding remote bookmark Z (run 'hg update' to get a working copy) $ hg bookmarks - X 0:4e3505fd9583 Y 0:4e3505fd9583 - Z 0:4e3505fd9583 $ hg debugpushkey ../a namespaces bookmarks - phases namespaces $ hg debugpushkey ../a bookmarks Y 4e3505fd95835d721066b76e75dbb8cc554d7f77 @@ -51,7 +44,6 @@ import bookmark by name $ hg bookmark X 0:4e3505fd9583 Y 0:4e3505fd9583 - Z 0:4e3505fd9583 export bookmark by name @@ -63,7 +55,6 @@ export bookmark by name searching for changes no changes found exporting bookmark W - [1] $ hg -R ../a bookmarks W -1:000000000000 X 0:4e3505fd9583 @@ -78,7 +69,6 @@ delete a remote bookmark searching for changes no changes found deleting remote bookmark W - [1] push/pull name that doesn't exist @@ -108,7 +98,6 @@ divergent bookmarks $ cd ../b $ hg up 1 files updated, 0 files merged, 0 files removed, 0 files unresolved - updating bookmark foobar $ echo c2 > f2 $ hg ci -Am2 adding f2 @@ -116,27 +105,23 @@ divergent bookmarks $ hg book * X 1:9b140be10808 Y 0:4e3505fd9583 - Z 0:4e3505fd9583 foo -1:000000000000 - foobar 1:9b140be10808 + foobar -1:000000000000 - $ hg pull --config paths.foo=../a foo - pulling from $TESTTMP/a (glob) + $ hg pull ../a + pulling from ../a searching for changes adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files (+1 heads) - divergent bookmark X stored as X@foo - updating bookmark Z + not updating divergent bookmark X (run 'hg heads' to see heads, 'hg merge' to merge) $ hg book * X 1:9b140be10808 - X@foo 2:0d2164f0ce0d Y 0:4e3505fd9583 - Z 2:0d2164f0ce0d foo -1:000000000000 - foobar 1:9b140be10808 + foobar -1:000000000000 $ hg push -f ../a pushing to ../a searching for changes @@ -149,55 +134,6 @@ divergent bookmarks Y 0:4e3505fd9583 Z 1:0d2164f0ce0d -update a remote bookmark from a non-head to a head - - $ hg up -q Y - $ echo c3 > f2 - $ hg ci -Am3 - adding f2 - created new head - $ hg push ../a - pushing to ../a - searching for changes - adding changesets - adding manifests - adding file changes - added 1 changesets with 1 changes to 1 files (+1 heads) - updating bookmark Y - $ hg -R ../a book - * X 1:0d2164f0ce0d - Y 3:f6fc62dde3c0 - Z 1:0d2164f0ce0d - -diverging a remote bookmark fails - - $ hg up -q 4e3505fd9583 - $ echo c4 > f2 - $ hg ci -Am4 - adding f2 - created new head - $ hg book -f Y - - $ cat <<EOF > ../a/.hg/hgrc - > [web] - > push_ssl = false - > allow_push = * - > EOF - - $ hg -R ../a serve -p $HGPORT2 -d --pid-file=../hg2.pid - $ cat ../hg2.pid >> $DAEMON_PIDS - - $ hg push http://localhost:$HGPORT2/ - pushing to http://localhost:$HGPORT2/ - searching for changes - abort: push creates new remote head 4efff6d98829! - (did you forget to merge? use push -f to force) - [255] - $ hg -R ../a book - * X 1:0d2164f0ce0d - Y 3:f6fc62dde3c0 - Z 1:0d2164f0ce0d - hgweb $ cat <<EOF > .hg/hgrc @@ -212,87 +148,46 @@ hgweb $ hg debugpushkey http://localhost:$HGPORT/ namespaces bookmarks - phases namespaces $ hg debugpushkey http://localhost:$HGPORT/ bookmarks - Y 4efff6d98829d9c824c621afd6e3f01865f5439f - foobar 9b140be1080824d768c5a4691a564088eede71f9 - Z 0d2164f0ce0d8f1d6f94351eba04b794909be66c - foo 0000000000000000000000000000000000000000 + Y 4e3505fd95835d721066b76e75dbb8cc554d7f77 X 9b140be1080824d768c5a4691a564088eede71f9 + foo 0000000000000000000000000000000000000000 + foobar 0000000000000000000000000000000000000000 $ hg out -B http://localhost:$HGPORT/ comparing with http://localhost:$HGPORT/ searching for changed bookmarks - no changed bookmarks found - [1] + Z 0d2164f0ce0d $ hg push -B Z http://localhost:$HGPORT/ pushing to http://localhost:$HGPORT/ searching for changes no changes found exporting bookmark Z - [1] $ hg book -d Z $ hg in -B http://localhost:$HGPORT/ comparing with http://localhost:$HGPORT/ searching for changed bookmarks Z 0d2164f0ce0d foo 000000000000 - foobar 9b140be10808 + foobar 000000000000 $ hg pull -B Z http://localhost:$HGPORT/ pulling from http://localhost:$HGPORT/ no changes found - adding remote bookmark foobar - adding remote bookmark Z - adding remote bookmark foo - divergent bookmark X stored as X@1 + not updating divergent bookmark X importing bookmark Z $ hg clone http://localhost:$HGPORT/ cloned-bookmarks requesting all changes adding changesets adding manifests adding file changes - added 5 changesets with 5 changes to 3 files (+3 heads) + added 3 changesets with 3 changes to 3 files (+1 heads) updating to branch default 2 files updated, 0 files merged, 0 files removed, 0 files unresolved $ hg -R cloned-bookmarks bookmarks X 1:9b140be10808 - Y 4:4efff6d98829 + Y 0:4e3505fd9583 Z 2:0d2164f0ce0d foo -1:000000000000 - foobar 1:9b140be10808 - - $ cd .. - -Pushing a bookmark should only push the changes required by that -bookmark, not all outgoing changes: - $ hg clone http://localhost:$HGPORT/ addmarks - requesting all changes - adding changesets - adding manifests - adding file changes - added 5 changesets with 5 changes to 3 files (+3 heads) - updating to branch default - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved - $ cd addmarks - $ echo foo > foo - $ hg add foo - $ hg commit -m 'add foo' - $ echo bar > bar - $ hg add bar - $ hg commit -m 'add bar' - $ hg co "tip^" - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved - $ hg book add-foo - $ hg book -r tip add-bar -Note: this push *must* push only a single changeset, as that's the point -of this test. - $ hg push -B add-foo - pushing to http://localhost:$HGPORT/ - searching for changes - remote: adding changesets - remote: adding manifests - remote: adding file changes - remote: added 1 changesets with 1 changes to 1 files - exporting bookmark add-foo + foobar -1:000000000000 - $ cd .. + $ kill `cat ../hg.pid` |