Mercurial > hg > mercurial-crew-with-dirclash
annotate tests/test-unrelated-pull @ 2439:e8c4f3d3df8c
extend network protocol to stop clients from locking servers
now all repositories have capabilities slot, tuple with list of names.
if 'unbundle' capability present, repo supports push where client does
not need to lock server. repository classes that have unbundle capability
also have unbundle method.
implemented for ssh now, will be base for push over http.
unbundle protocol acts this way. server tells client what heads it
has during normal negotiate step. client starts unbundle by repeat
server's heads back to it. if server has new heads, abort immediately.
otherwise, transfer changes to server. once data transferred, server
locks and checks heads again. if heads same, changes can be added.
else someone else added heads, and server aborts.
if client wants to force server to add heads, sends special heads list of
'force'.
author | Vadim Gelfer <vadim.gelfer@gmail.com> |
---|---|
date | Thu, 15 Jun 2006 16:37:23 -0700 |
parents | dac4bd67f6c5 |
children |
rev | line source |
---|---|
749
7e4843b7efd2
Update tests to use commit -m and default -u
mpm@selenic.com
parents:
579
diff
changeset
|
1 #!/bin/sh |
7e4843b7efd2
Update tests to use commit -m and default -u
mpm@selenic.com
parents:
579
diff
changeset
|
2 |
579
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
3 mkdir a |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
4 cd a |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
5 hg init |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
6 echo 123 > a |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
7 hg add a |
1933
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1308
diff
changeset
|
8 hg commit -m "a" -u a -d "1000000 0" |
579
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
9 |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
10 cd .. |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
11 mkdir b |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
12 cd b |
1308
2073e5a71008
Cleanup of tabs and trailing spaces.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
814
diff
changeset
|
13 hg init |
579
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
14 echo 321 > b |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
15 hg add b |
1933
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1308
diff
changeset
|
16 hg commit -m "b" -u b -d "1000000 0" |
579
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
17 |
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
18 hg pull ../a |
1960
dac4bd67f6c5
update test for unrelated repo.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
19 hg pull -f ../a |
579
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
20 hg heads |