view tests/test-merge6.out @ 635:85e2209d401c

Protocol switch from using generators to stream-like objects. This allows the the pull side to precisely control how much data is read so that another encapsulation layer is not needed. An http client gets a response with a finite size. Because ssh clients need to keep the stream open, we must not read more data than is sent in a response. But due to the streaming nature of the changegroup scheme, only the piece that's parsing the data knows how far it's allowed to read. This means the generator scheme isn't fine-grained enough. Instead we need file-like objects with a read(x) method. This switches everything for push/pull over to using file-like objects rather than generators.
author Matt Mackall <mpm@selenic.com>
date Wed, 06 Jul 2005 22:20:12 -0800
parents d45d1c90032e
children 5d6177b72fcc
line wrap: on
line source

+ cat
+ chmod +x merge
+ export HGMERGE=./merge
+ HGMERGE=./merge
+ mkdir A1
+ cd A1
+ hg init
+ echo This is file foo1
+ echo This is file bar1
+ hg add foo bar
+ hg commit -t 'commit text' -d '0 0' -u user
+ cd ..
+ hg clone A1 B1
+ cd A1
+ rm bar
+ hg remove bar
+ hg commit -t 'commit test' -d '0 0' -u user
+ cd ../B1
+ echo This is file foo22
+ hg commit -t 'commit test' -d '0 0' -u user
+ cd ..
+ hg clone A1 A2
+ hg clone B1 B2
+ cd A1
+ hg pull ../B1
pulling from ../B1
searching for changes
adding changesets
adding manifests
adding file revisions
modified 1 files, added 1 changesets and 1 new revisions
(run 'hg update' to get a working copy)
+ hg update -m
+ hg commit -t 'commit test' -d '0 0' -u user
+ echo bar should remain deleted.
bar should remain deleted.
+ hg manifest
6b70e9e451a5a33faad7bbebe627e46b937b7364 644 foo
+ cd ../B2
+ hg pull ../A2
pulling from ../A2
searching for changes
adding changesets
adding manifests
adding file revisions
modified 0 files, added 1 changesets and 0 new revisions
(run 'hg update' to get a working copy)
+ hg update -m
+ hg commit -t 'commit test' -d '0 0' -u user
+ echo bar should remain deleted.
bar should remain deleted.
+ hg manifest
6b70e9e451a5a33faad7bbebe627e46b937b7364 644 foo