annotate tests/test-push-race.t @ 49306:2e726c934fcd

py3: catch FileNotFoundError instead of checking errno == ENOENT
author Manuel Jacob <me@manueljacob.de>
date Tue, 31 May 2022 22:50:01 +0200
parents 9c4204b7f3e4
children c6f0bcb7bc57
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
1 ============================================================================================
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
2 Test cases where there are race condition between two clients pushing to the same repository
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
3 ============================================================================================
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
4
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
5 This file tests cases where two clients push to a server at the same time. The
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
6 "raced" client is done preparing it push bundle when the "racing" client
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
7 perform its push. The "raced" client starts its actual push after the "racing"
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
8 client push is fully complete.
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
9
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
10 A set of extension and shell functions ensures this scheduling.
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
11
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
12 $ cat >> delaypush.py << EOF
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
13 > """small extension orchestrate push race
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
14 >
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
15 > Client with the extensions will create a file when ready and get stuck until
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
16 > a file is created."""
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
17 >
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
18 > import errno
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
19 > import os
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
20 > import time
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
21 >
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
22 > from mercurial import (
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
23 > exchange,
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
24 > extensions,
34767
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
25 > registrar,
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
26 > )
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
27 >
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
28 > configtable = {}
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
29 > configitem = registrar.configitem(configtable)
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
30 >
40870
d3d52cc91e83 py3: byteify test-push-race.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 40147
diff changeset
31 > configitem(b'delaypush', b'ready-path',
34767
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
32 > default=None,
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
33 > )
40870
d3d52cc91e83 py3: byteify test-push-race.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 40147
diff changeset
34 > configitem(b'delaypush', b'release-path',
34767
6338e23c887d configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
35 > default=None,
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
36 > )
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
37 >
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
38 > def delaypush(orig, pushop):
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
39 > # notify we are done preparing
33314
7d8d2da4516c tests: fix reference to undefined variable
Martin von Zweigbergk <martinvonz@google.com>
parents: 33262
diff changeset
40 > ui = pushop.repo.ui
40870
d3d52cc91e83 py3: byteify test-push-race.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 40147
diff changeset
41 > readypath = ui.config(b'delaypush', b'ready-path')
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
42 > if readypath is not None:
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
43 > with open(readypath, 'w') as r:
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
44 > r.write('foo')
40870
d3d52cc91e83 py3: byteify test-push-race.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 40147
diff changeset
45 > ui.status(b'wrote ready: %s\n' % readypath)
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
46 > # now wait for the other process to be done
40870
d3d52cc91e83 py3: byteify test-push-race.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 40147
diff changeset
47 > watchpath = ui.config(b'delaypush', b'release-path')
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
48 > if watchpath is not None:
40870
d3d52cc91e83 py3: byteify test-push-race.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 40147
diff changeset
49 > ui.status(b'waiting on: %s\n' % watchpath)
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
50 > limit = 100
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
51 > while 0 < limit and not os.path.exists(watchpath):
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
52 > limit -= 1
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
53 > time.sleep(0.1)
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
54 > if limit <= 0:
40870
d3d52cc91e83 py3: byteify test-push-race.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 40147
diff changeset
55 > ui.warn(b'exiting without watchfile: %s' % watchpath)
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
56 > else:
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
57 > # delete the file at the end of the push
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
58 > def delete():
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
59 > try:
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
60 > os.unlink(watchpath)
49306
2e726c934fcd py3: catch FileNotFoundError instead of checking errno == ENOENT
Manuel Jacob <me@manueljacob.de>
parents: 47920
diff changeset
61 > except FileNotFoundError:
2e726c934fcd py3: catch FileNotFoundError instead of checking errno == ENOENT
Manuel Jacob <me@manueljacob.de>
parents: 47920
diff changeset
62 > pass
34507
30ae924a9e00 test-push-race: use 'ui.atexit' instead of python's 'atexit'
Saurabh Singh <singhsrb@fb.com>
parents: 33773
diff changeset
63 > ui.atexit(delete)
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
64 > return orig(pushop)
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
65 >
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
66 > def uisetup(ui):
40870
d3d52cc91e83 py3: byteify test-push-race.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 40147
diff changeset
67 > extensions.wrapfunction(exchange, b'_pushbundle2', delaypush)
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
68 > EOF
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
69
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
70 $ waiton () {
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
71 > # wait for a file to be created (then delete it)
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
72 > count=100
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
73 > while [ ! -f $1 ] ;
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
74 > do
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
75 > sleep 0.1;
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
76 > count=`expr $count - 1`;
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
77 > if [ $count -lt 0 ];
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
78 > then
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
79 > break
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
80 > fi;
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
81 > done
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
82 > [ -f $1 ] || echo "ready file still missing: $1"
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
83 > rm -f $1
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
84 > }
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
85
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
86 $ release () {
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
87 > # create a file and wait for it be deleted
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
88 > count=100
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
89 > touch $1
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
90 > while [ -f $1 ] ;
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
91 > do
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
92 > sleep 0.1;
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
93 > count=`expr $count - 1`;
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
94 > if [ $count -lt 0 ];
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
95 > then
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
96 > break
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
97 > fi;
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
98 > done
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
99 > [ ! -f $1 ] || echo "delay file still exist: $1"
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
100 > }
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
101
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
102 $ cat >> $HGRCPATH << EOF
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
103 > [ui]
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
104 > # simplify output
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
105 > logtemplate = {node|short} {desc} ({branch})
32669
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
106 > [phases]
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
107 > publish = no
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
108 > [experimental]
34865
a0100f34e20b config: replace experimental.stabilization by experimental.evolution
Boris Feld <boris.feld@octobus.net>
parents: 34767
diff changeset
109 > evolution=true
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
110 > [alias]
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
111 > graph = log -G --rev 'sort(all(), "topo")'
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
112 > EOF
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
113
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
114 We tests multiple cases:
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
115 * strict: no race detected,
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
116 * unrelated: race on unrelated heads are allowed.
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
117
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
118 #testcases strict unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
119
44412
edc8504bc26b exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42893
diff changeset
120 #if strict
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
121
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
122 $ cat >> $HGRCPATH << EOF
32892
a7851519ea02 check-concurrency: expose the feature as 'concurrent-push-mode'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32709
diff changeset
123 > [server]
44412
edc8504bc26b exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42893
diff changeset
124 > concurrent-push-mode = strict
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
125 > EOF
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
126
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
127 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
128
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
129 Setup
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
130 -----
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
131
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
132 create a repo with one root
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
133
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
134 $ hg init server
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
135 $ cd server
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
136 $ echo root > root
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
137 $ hg ci -Am "C-ROOT"
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
138 adding root
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
139 $ cd ..
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
140
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
141 clone it in two clients
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
142
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
143 $ hg clone ssh://user@dummy/server client-racy
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
144 requesting all changes
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
145 adding changesets
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
146 adding manifests
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
147 adding file changes
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
148 added 1 changesets with 1 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
149 new changesets 842e2fac6304 (1 drafts)
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
150 updating to branch default
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
151 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
152 $ hg clone ssh://user@dummy/server client-other
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
153 requesting all changes
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
154 adding changesets
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
155 adding manifests
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
156 adding file changes
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
157 added 1 changesets with 1 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
158 new changesets 842e2fac6304 (1 drafts)
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
159 updating to branch default
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
160 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
161
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
162 setup one to allow race on push
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
163
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
164 $ cat >> client-racy/.hg/hgrc << EOF
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
165 > [extensions]
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
166 > delaypush = $TESTTMP/delaypush.py
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
167 > [delaypush]
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
168 > ready-path = $TESTTMP/readyfile
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
169 > release-path = $TESTTMP/watchfile
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
170 > EOF
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
171
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
172 Simple race, both try to push to the server at the same time
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
173 ------------------------------------------------------------
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
174
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
175 Both try to replace the same head
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
176
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
177 # a
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
178 # | b
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
179 # |/
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
180 # *
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
181
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
182 Creating changesets
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
183
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
184 $ echo b > client-other/a
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
185 $ hg -R client-other/ add client-other/a
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
186 $ hg -R client-other/ commit -m "C-A"
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
187 $ echo b > client-racy/b
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
188 $ hg -R client-racy/ add client-racy/b
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
189 $ hg -R client-racy/ commit -m "C-B"
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
190
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
191 Pushing
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
192
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
193 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
194
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
195 $ waiton $TESTTMP/readyfile
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
196
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
197 $ hg -R client-other push -r 'tip'
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
198 pushing to ssh://user@dummy/server
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
199 searching for changes
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
200 remote: adding changesets
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
201 remote: adding manifests
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
202 remote: adding file changes
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
203 remote: added 1 changesets with 1 changes to 1 files
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
204
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
205 $ release $TESTTMP/watchfile
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
206
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
207 Check the result of the push
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
208
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
209 $ cat ./push-log
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
210 pushing to ssh://user@dummy/server
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
211 searching for changes
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
212 wrote ready: $TESTTMP/readyfile
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
213 waiting on: $TESTTMP/watchfile
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
214 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
215 'remote repository changed while pushing - please try again'
32630
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
216
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
217 $ hg -R server graph
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
218 o 98217d5a1659 C-A (default)
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
219 |
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
220 @ 842e2fac6304 C-ROOT (default)
53f47cc085d8 test: add a file dedicated to push race between clients
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
221
32631
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
222
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
223 Pushing on two different heads
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
224 ------------------------------
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
225
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
226 Both try to replace a different head
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
227
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
228 # a b
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
229 # | |
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
230 # * *
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
231 # |/
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
232 # *
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
233
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
234 (resync-all)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
235
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
236 $ hg -R ./server pull ./client-racy
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
237 pulling from ./client-racy
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
238 searching for changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
239 adding changesets
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
240 adding manifests
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
241 adding file changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
242 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
243 new changesets a9149a1428e2 (1 drafts)
32631
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
244 (run 'hg heads' to see heads, 'hg merge' to merge)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
245 $ hg -R ./client-other pull
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
246 pulling from ssh://user@dummy/server
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
247 searching for changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
248 adding changesets
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
249 adding manifests
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
250 adding file changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
251 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
252 new changesets a9149a1428e2 (1 drafts)
32631
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
253 (run 'hg heads' to see heads, 'hg merge' to merge)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
254 $ hg -R ./client-racy pull
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
255 pulling from ssh://user@dummy/server
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
256 searching for changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
257 adding changesets
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
258 adding manifests
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
259 adding file changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
260 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
261 new changesets 98217d5a1659 (1 drafts)
32631
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
262 (run 'hg heads' to see heads, 'hg merge' to merge)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
263
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
264 $ hg -R server graph
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
265 o a9149a1428e2 C-B (default)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
266 |
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
267 | o 98217d5a1659 C-A (default)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
268 |/
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
269 @ 842e2fac6304 C-ROOT (default)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
270
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
271
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
272 Creating changesets
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
273
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
274 $ echo aa >> client-other/a
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
275 $ hg -R client-other/ commit -m "C-C"
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
276 $ echo bb >> client-racy/b
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
277 $ hg -R client-racy/ commit -m "C-D"
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
278
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
279 Pushing
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
280
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
281 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
282
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
283 $ waiton $TESTTMP/readyfile
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
284
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
285 $ hg -R client-other push -r 'tip'
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
286 pushing to ssh://user@dummy/server
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
287 searching for changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
288 remote: adding changesets
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
289 remote: adding manifests
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
290 remote: adding file changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
291 remote: added 1 changesets with 1 changes to 1 files
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
292
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
293 $ release $TESTTMP/watchfile
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
294
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
295 Check the result of the push
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
296
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
297 #if strict
32631
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
298 $ cat ./push-log
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
299 pushing to ssh://user@dummy/server
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
300 searching for changes
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
301 wrote ready: $TESTTMP/readyfile
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
302 waiting on: $TESTTMP/watchfile
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
303 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
304 'remote repository changed while pushing - please try again'
32631
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
305
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
306 $ hg -R server graph
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
307 o 51c544a58128 C-C (default)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
308 |
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
309 o 98217d5a1659 C-A (default)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
310 |
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
311 | o a9149a1428e2 C-B (default)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
312 |/
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
313 @ 842e2fac6304 C-ROOT (default)
63afbc74a856 test: add a push race case where each client replaces a different head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32630
diff changeset
314
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
315 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
316 #if unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
317
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
318 (The two heads are unrelated, push should be allowed)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
319
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
320 $ cat ./push-log
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
321 pushing to ssh://user@dummy/server
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
322 searching for changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
323 wrote ready: $TESTTMP/readyfile
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
324 waiting on: $TESTTMP/watchfile
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
325 remote: adding changesets
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
326 remote: adding manifests
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
327 remote: adding file changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
328 remote: added 1 changesets with 1 changes to 1 files
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
329
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
330 $ hg -R server graph
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
331 o 59e76faf78bd C-D (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
332 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
333 o a9149a1428e2 C-B (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
334 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
335 | o 51c544a58128 C-C (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
336 | |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
337 | o 98217d5a1659 C-A (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
338 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
339 @ 842e2fac6304 C-ROOT (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
340
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
341 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
342
32632
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
343 Pushing while someone creates a new head
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
344 -----------------------------------------
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
345
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
346 Pushing a new changeset while someone creates a new branch.
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
347
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
348 # a (raced)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
349 # |
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
350 # * b
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
351 # |/
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
352 # *
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
353
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
354 (resync-all)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
355
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
356 #if strict
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
357
32632
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
358 $ hg -R ./server pull ./client-racy
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
359 pulling from ./client-racy
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
360 searching for changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
361 adding changesets
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
362 adding manifests
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
363 adding file changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
364 added 1 changesets with 1 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
365 new changesets 59e76faf78bd (1 drafts)
32632
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
366 (run 'hg update' to get a working copy)
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
367
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
368 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
369 #if unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
370
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
371 $ hg -R ./server pull ./client-racy
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
372 pulling from ./client-racy
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
373 searching for changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
374 no changes found
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
375
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
376 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
377
32632
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
378 $ hg -R ./client-other pull
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
379 pulling from ssh://user@dummy/server
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
380 searching for changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
381 adding changesets
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
382 adding manifests
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
383 adding file changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
384 added 1 changesets with 1 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
385 new changesets 59e76faf78bd (1 drafts)
32632
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
386 (run 'hg update' to get a working copy)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
387 $ hg -R ./client-racy pull
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
388 pulling from ssh://user@dummy/server
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
389 searching for changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
390 adding changesets
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
391 adding manifests
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
392 adding file changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
393 added 1 changesets with 1 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
394 new changesets 51c544a58128 (1 drafts)
32632
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
395 (run 'hg update' to get a working copy)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
396
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
397 $ hg -R server graph
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
398 o 59e76faf78bd C-D (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
399 |
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
400 o a9149a1428e2 C-B (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
401 |
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
402 | o 51c544a58128 C-C (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
403 | |
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
404 | o 98217d5a1659 C-A (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
405 |/
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
406 @ 842e2fac6304 C-ROOT (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
407
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
408
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
409 Creating changesets
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
410
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
411 (new head)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
412
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
413 $ hg -R client-other/ up 'desc("C-A")'
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
414 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
415 $ echo aaa >> client-other/a
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
416 $ hg -R client-other/ commit -m "C-E"
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
417 created new head
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
418
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
419 (children of existing head)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
420
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
421 $ hg -R client-racy/ up 'desc("C-C")'
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
422 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
423 $ echo bbb >> client-racy/a
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
424 $ hg -R client-racy/ commit -m "C-F"
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
425
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
426 Pushing
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
427
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
428 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
429
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
430 $ waiton $TESTTMP/readyfile
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
431
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
432 $ hg -R client-other push -fr 'tip'
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
433 pushing to ssh://user@dummy/server
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
434 searching for changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
435 remote: adding changesets
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
436 remote: adding manifests
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
437 remote: adding file changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
438 remote: added 1 changesets with 1 changes to 1 files (+1 heads)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
439
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
440 $ release $TESTTMP/watchfile
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
441
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
442 Check the result of the push
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
443
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
444 #if strict
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
445
32632
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
446 $ cat ./push-log
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
447 pushing to ssh://user@dummy/server
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
448 searching for changes
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
449 wrote ready: $TESTTMP/readyfile
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
450 waiting on: $TESTTMP/watchfile
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
451 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
452 'remote repository changed while pushing - please try again'
32632
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
453
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
454 $ hg -R server graph
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
455 o d603e2c0cdd7 C-E (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
456 |
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
457 | o 51c544a58128 C-C (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
458 |/
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
459 o 98217d5a1659 C-A (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
460 |
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
461 | o 59e76faf78bd C-D (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
462 | |
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
463 | o a9149a1428e2 C-B (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
464 |/
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
465 @ 842e2fac6304 C-ROOT (default)
090a6fe6e563 test: add a push race case where the racing client create a new head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32631
diff changeset
466
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
467
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
468 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
469
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
470 #if unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
471
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
472 (The racing new head do not affect existing heads, push should go through)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
473
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
474 $ cat ./push-log
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
475 pushing to ssh://user@dummy/server
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
476 searching for changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
477 wrote ready: $TESTTMP/readyfile
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
478 waiting on: $TESTTMP/watchfile
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
479 remote: adding changesets
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
480 remote: adding manifests
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
481 remote: adding file changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
482 remote: added 1 changesets with 1 changes to 1 files
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
483
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
484 $ hg -R server graph
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
485 o d9e379a8c432 C-F (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
486 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
487 o 51c544a58128 C-C (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
488 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
489 | o d603e2c0cdd7 C-E (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
490 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
491 o 98217d5a1659 C-A (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
492 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
493 | o 59e76faf78bd C-D (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
494 | |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
495 | o a9149a1428e2 C-B (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
496 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
497 @ 842e2fac6304 C-ROOT (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
498
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
499 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
500
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
501 Pushing touching different named branch (same topo): new branch raced
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
502 ---------------------------------------------------------------------
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
503
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
504 Pushing two children on the same head, one is a different named branch
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
505
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
506 # a (raced, branch-a)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
507 # |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
508 # | b (default branch)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
509 # |/
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
510 # *
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
511
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
512 (resync-all)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
513
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
514 #if strict
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
515
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
516 $ hg -R ./server pull ./client-racy
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
517 pulling from ./client-racy
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
518 searching for changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
519 adding changesets
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
520 adding manifests
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
521 adding file changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
522 added 1 changesets with 1 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
523 new changesets d9e379a8c432 (1 drafts)
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
524 (run 'hg update' to get a working copy)
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
525
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
526 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
527 #if unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
528
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
529 $ hg -R ./server pull ./client-racy
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
530 pulling from ./client-racy
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
531 searching for changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
532 no changes found
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
533
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
534 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
535
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
536 $ hg -R ./client-other pull
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
537 pulling from ssh://user@dummy/server
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
538 searching for changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
539 adding changesets
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
540 adding manifests
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
541 adding file changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
542 added 1 changesets with 1 changes to 1 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
543 new changesets d9e379a8c432 (1 drafts)
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
544 (run 'hg update' to get a working copy)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
545 $ hg -R ./client-racy pull
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
546 pulling from ssh://user@dummy/server
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
547 searching for changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
548 adding changesets
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
549 adding manifests
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
550 adding file changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
551 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
552 new changesets d603e2c0cdd7 (1 drafts)
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
553 (run 'hg heads .' to see heads, 'hg merge' to merge)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
554
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
555 $ hg -R server graph
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
556 o d9e379a8c432 C-F (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
557 |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
558 o 51c544a58128 C-C (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
559 |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
560 | o d603e2c0cdd7 C-E (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
561 |/
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
562 o 98217d5a1659 C-A (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
563 |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
564 | o 59e76faf78bd C-D (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
565 | |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
566 | o a9149a1428e2 C-B (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
567 |/
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
568 @ 842e2fac6304 C-ROOT (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
569
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
570
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
571 Creating changesets
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
572
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
573 (update existing head)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
574
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
575 $ hg -R client-other/ up 'desc("C-F")'
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
576 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
577 $ echo aaa >> client-other/a
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
578 $ hg -R client-other/ commit -m "C-G"
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
579
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
580 (new named branch from that existing head)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
581
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
582 $ hg -R client-racy/ up 'desc("C-F")'
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
583 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
584 $ echo bbb >> client-racy/a
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
585 $ hg -R client-racy/ branch my-first-test-branch
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
586 marked working directory as branch my-first-test-branch
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
587 (branches are permanent and global, did you want a bookmark?)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
588 $ hg -R client-racy/ commit -m "C-H"
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
589
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
590 Pushing
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
591
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
592 $ hg -R client-racy push -r 'tip' --new-branch > ./push-log 2>&1 &
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
593
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
594 $ waiton $TESTTMP/readyfile
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
595
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
596 $ hg -R client-other push -fr 'tip'
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
597 pushing to ssh://user@dummy/server
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
598 searching for changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
599 remote: adding changesets
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
600 remote: adding manifests
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
601 remote: adding file changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
602 remote: added 1 changesets with 1 changes to 1 files
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
603
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
604 $ release $TESTTMP/watchfile
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
605
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
606 Check the result of the push
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
607
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
608 #if strict
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
609 $ cat ./push-log
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
610 pushing to ssh://user@dummy/server
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
611 searching for changes
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
612 wrote ready: $TESTTMP/readyfile
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
613 waiting on: $TESTTMP/watchfile
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
614 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
615 'remote repository changed while pushing - please try again'
32633
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
616
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
617 $ hg -R server graph
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
618 o 75d69cba5402 C-G (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
619 |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
620 o d9e379a8c432 C-F (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
621 |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
622 o 51c544a58128 C-C (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
623 |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
624 | o d603e2c0cdd7 C-E (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
625 |/
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
626 o 98217d5a1659 C-A (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
627 |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
628 | o 59e76faf78bd C-D (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
629 | |
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
630 | o a9149a1428e2 C-B (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
631 |/
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
632 @ 842e2fac6304 C-ROOT (default)
b01bfa5abbfe test: add a push race case where raced push created a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32632
diff changeset
633
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
634 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
635 #if unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
636
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
637 (unrelated named branches are unrelated)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
638
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
639 $ cat ./push-log
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
640 pushing to ssh://user@dummy/server
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
641 searching for changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
642 wrote ready: $TESTTMP/readyfile
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
643 waiting on: $TESTTMP/watchfile
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
644 remote: adding changesets
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
645 remote: adding manifests
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
646 remote: adding file changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
647 remote: added 1 changesets with 1 changes to 1 files (+1 heads)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
648
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
649 $ hg -R server graph
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
650 o 833be552cfe6 C-H (my-first-test-branch)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
651 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
652 | o 75d69cba5402 C-G (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
653 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
654 o d9e379a8c432 C-F (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
655 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
656 o 51c544a58128 C-C (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
657 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
658 | o d603e2c0cdd7 C-E (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
659 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
660 o 98217d5a1659 C-A (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
661 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
662 | o 59e76faf78bd C-D (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
663 | |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
664 | o a9149a1428e2 C-B (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
665 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
666 @ 842e2fac6304 C-ROOT (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
667
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
668 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
669
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
670 The racing new head do not affect existing heads, push should go through
32634
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
671
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
672 pushing touching different named branch (same topo): old branch raced
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
673 ---------------------------------------------------------------------
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
674
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
675 Pushing two children on the same head, one is a different named branch
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
676
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
677 # a (raced, default-branch)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
678 # |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
679 # | b (new branch)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
680 # |/
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
681 # * (default-branch)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
682
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
683 (resync-all)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
684
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
685 #if strict
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
686
32634
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
687 $ hg -R ./server pull ./client-racy
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
688 pulling from ./client-racy
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
689 searching for changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
690 adding changesets
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
691 adding manifests
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
692 adding file changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
693 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
694 new changesets 833be552cfe6 (1 drafts)
32634
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
695 (run 'hg heads .' to see heads, 'hg merge' to merge)
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
696
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
697 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
698 #if unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
699
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
700 $ hg -R ./server pull ./client-racy
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
701 pulling from ./client-racy
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
702 searching for changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
703 no changes found
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
704
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
705 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
706
32634
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
707 $ hg -R ./client-other pull
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
708 pulling from ssh://user@dummy/server
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
709 searching for changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
710 adding changesets
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
711 adding manifests
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
712 adding file changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
713 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
714 new changesets 833be552cfe6 (1 drafts)
32634
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
715 (run 'hg heads .' to see heads, 'hg merge' to merge)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
716 $ hg -R ./client-racy pull
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
717 pulling from ssh://user@dummy/server
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
718 searching for changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
719 adding changesets
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
720 adding manifests
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
721 adding file changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
722 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
723 new changesets 75d69cba5402 (1 drafts)
32634
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
724 (run 'hg heads' to see heads)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
725
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
726 $ hg -R server graph
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
727 o 833be552cfe6 C-H (my-first-test-branch)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
728 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
729 | o 75d69cba5402 C-G (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
730 |/
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
731 o d9e379a8c432 C-F (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
732 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
733 o 51c544a58128 C-C (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
734 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
735 | o d603e2c0cdd7 C-E (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
736 |/
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
737 o 98217d5a1659 C-A (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
738 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
739 | o 59e76faf78bd C-D (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
740 | |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
741 | o a9149a1428e2 C-B (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
742 |/
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
743 @ 842e2fac6304 C-ROOT (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
744
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
745
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
746 Creating changesets
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
747
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
748 (new named branch from one head)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
749
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
750 $ hg -R client-other/ up 'desc("C-G")'
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
751 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
752 $ echo aaa >> client-other/a
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
753 $ hg -R client-other/ branch my-second-test-branch
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
754 marked working directory as branch my-second-test-branch
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
755 $ hg -R client-other/ commit -m "C-I"
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
756
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
757 (children "updating" that same head)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
758
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
759 $ hg -R client-racy/ up 'desc("C-G")'
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
760 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
761 $ echo bbb >> client-racy/a
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
762 $ hg -R client-racy/ commit -m "C-J"
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
763
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
764 Pushing
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
765
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
766 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
767
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
768 $ waiton $TESTTMP/readyfile
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
769
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
770 $ hg -R client-other push -fr 'tip' --new-branch
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
771 pushing to ssh://user@dummy/server
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
772 searching for changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
773 remote: adding changesets
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
774 remote: adding manifests
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
775 remote: adding file changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
776 remote: added 1 changesets with 1 changes to 1 files
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
777
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
778 $ release $TESTTMP/watchfile
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
779
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
780 Check the result of the push
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
781
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
782 #if strict
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
783
32634
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
784 $ cat ./push-log
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
785 pushing to ssh://user@dummy/server
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
786 searching for changes
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
787 wrote ready: $TESTTMP/readyfile
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
788 waiting on: $TESTTMP/watchfile
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
789 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
790 'remote repository changed while pushing - please try again'
32634
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
791
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
792 $ hg -R server graph
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
793 o b35ed749f288 C-I (my-second-test-branch)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
794 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
795 o 75d69cba5402 C-G (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
796 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
797 | o 833be552cfe6 C-H (my-first-test-branch)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
798 |/
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
799 o d9e379a8c432 C-F (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
800 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
801 o 51c544a58128 C-C (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
802 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
803 | o d603e2c0cdd7 C-E (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
804 |/
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
805 o 98217d5a1659 C-A (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
806 |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
807 | o 59e76faf78bd C-D (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
808 | |
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
809 | o a9149a1428e2 C-B (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
810 |/
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
811 @ 842e2fac6304 C-ROOT (default)
8d10e21e3b57 test: add a push race case where racing push create a new named branch
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32633
diff changeset
812
32635
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
813
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
814 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
815
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
816 #if unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
817
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
818 (unrelated named branches are unrelated)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
819
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
820 $ cat ./push-log
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
821 pushing to ssh://user@dummy/server
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
822 searching for changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
823 wrote ready: $TESTTMP/readyfile
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
824 waiting on: $TESTTMP/watchfile
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
825 remote: adding changesets
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
826 remote: adding manifests
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
827 remote: adding file changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
828 remote: added 1 changesets with 1 changes to 1 files (+1 heads)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
829
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
830 $ hg -R server graph
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
831 o 89420bf00fae C-J (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
832 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
833 | o b35ed749f288 C-I (my-second-test-branch)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
834 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
835 o 75d69cba5402 C-G (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
836 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
837 | o 833be552cfe6 C-H (my-first-test-branch)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
838 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
839 o d9e379a8c432 C-F (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
840 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
841 o 51c544a58128 C-C (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
842 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
843 | o d603e2c0cdd7 C-E (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
844 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
845 o 98217d5a1659 C-A (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
846 |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
847 | o 59e76faf78bd C-D (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
848 | |
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
849 | o a9149a1428e2 C-B (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
850 |/
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
851 @ 842e2fac6304 C-ROOT (default)
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
852
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
853
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
854 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
855
32635
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
856 pushing racing push touch multiple heads
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
857 ----------------------------------------
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
858
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
859 There are multiple heads, but the racing push touch all of them
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
860
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
861 # a (raced)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
862 # | b
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
863 # |/|
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
864 # * *
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
865 # |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
866 # *
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
867
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
868 (resync-all)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
869
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
870 #if strict
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
871
32635
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
872 $ hg -R ./server pull ./client-racy
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
873 pulling from ./client-racy
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
874 searching for changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
875 adding changesets
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
876 adding manifests
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
877 adding file changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
878 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
879 new changesets 89420bf00fae (1 drafts)
32635
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
880 (run 'hg heads .' to see heads, 'hg merge' to merge)
32709
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
881
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
882 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
883
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
884 #if unrelated
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
885
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
886 $ hg -R ./server pull ./client-racy
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
887 pulling from ./client-racy
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
888 searching for changes
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
889 no changes found
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
890
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
891 #endif
16ada4cbb1a9 push: add a way to allow concurrent pushes on unrelated heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32670
diff changeset
892
32635
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
893 $ hg -R ./client-other pull
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
894 pulling from ssh://user@dummy/server
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
895 searching for changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
896 adding changesets
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
897 adding manifests
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
898 adding file changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
899 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
900 new changesets 89420bf00fae (1 drafts)
32635
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
901 (run 'hg heads' to see heads)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
902 $ hg -R ./client-racy pull
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
903 pulling from ssh://user@dummy/server
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
904 searching for changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
905 adding changesets
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
906 adding manifests
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
907 adding file changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
908 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
909 new changesets b35ed749f288 (1 drafts)
32635
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
910 (run 'hg heads .' to see heads, 'hg merge' to merge)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
911
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
912 $ hg -R server graph
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
913 o 89420bf00fae C-J (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
914 |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
915 | o b35ed749f288 C-I (my-second-test-branch)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
916 |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
917 o 75d69cba5402 C-G (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
918 |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
919 | o 833be552cfe6 C-H (my-first-test-branch)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
920 |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
921 o d9e379a8c432 C-F (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
922 |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
923 o 51c544a58128 C-C (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
924 |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
925 | o d603e2c0cdd7 C-E (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
926 |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
927 o 98217d5a1659 C-A (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
928 |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
929 | o 59e76faf78bd C-D (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
930 | |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
931 | o a9149a1428e2 C-B (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
932 |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
933 @ 842e2fac6304 C-ROOT (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
934
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
935
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
936 Creating changesets
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
937
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
938 (merges heads)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
939
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
940 $ hg -R client-other/ up 'desc("C-E")'
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
941 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
942 $ hg -R client-other/ merge 'desc("C-D")'
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
943 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
944 (branch merge, don't forget to commit)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
945 $ hg -R client-other/ commit -m "C-K"
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
946
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
947 (update one head)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
948
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
949 $ hg -R client-racy/ up 'desc("C-D")'
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
950 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
951 $ echo bbb >> client-racy/b
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
952 $ hg -R client-racy/ commit -m "C-L"
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
953
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
954 Pushing
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
955
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
956 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
957
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
958 $ waiton $TESTTMP/readyfile
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
959
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
960 $ hg -R client-other push -fr 'tip' --new-branch
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
961 pushing to ssh://user@dummy/server
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
962 searching for changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
963 remote: adding changesets
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
964 remote: adding manifests
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
965 remote: adding file changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
966 remote: added 1 changesets with 0 changes to 0 files (-1 heads)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
967
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
968 $ release $TESTTMP/watchfile
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
969
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
970 Check the result of the push
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
971
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
972 $ cat ./push-log
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
973 pushing to ssh://user@dummy/server
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
974 searching for changes
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
975 wrote ready: $TESTTMP/readyfile
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
976 waiting on: $TESTTMP/watchfile
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
977 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
978 'remote repository changed while pushing - please try again'
32635
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
979
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
980 $ hg -R server graph
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
981 o be705100c623 C-K (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
982 |\
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
983 | o d603e2c0cdd7 C-E (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
984 | |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
985 o | 59e76faf78bd C-D (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
986 | |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
987 | | o 89420bf00fae C-J (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
988 | | |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
989 | | | o b35ed749f288 C-I (my-second-test-branch)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
990 | | |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
991 | | o 75d69cba5402 C-G (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
992 | | |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
993 | | | o 833be552cfe6 C-H (my-first-test-branch)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
994 | | |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
995 | | o d9e379a8c432 C-F (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
996 | | |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
997 | | o 51c544a58128 C-C (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
998 | |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
999 o | a9149a1428e2 C-B (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
1000 | |
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
1001 | o 98217d5a1659 C-A (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
1002 |/
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
1003 @ 842e2fac6304 C-ROOT (default)
32c80d07952b test: add a push race case where racing push touches multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32634
diff changeset
1004
32636
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1005
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1006 pushing raced push touch multiple heads
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1007 ---------------------------------------
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1008
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1009 There are multiple heads, the raced push touch all of them
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1010
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1011 # b
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1012 # | a (raced)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1013 # |/|
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1014 # * *
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1015 # |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1016 # *
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1017
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1018 (resync-all)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1019
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1020 $ hg -R ./server pull ./client-racy
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1021 pulling from ./client-racy
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1022 searching for changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1023 adding changesets
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1024 adding manifests
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1025 adding file changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1026 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1027 new changesets cac2cead0ff0 (1 drafts)
32636
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1028 (run 'hg heads .' to see heads, 'hg merge' to merge)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1029 $ hg -R ./client-other pull
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1030 pulling from ssh://user@dummy/server
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1031 searching for changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1032 adding changesets
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1033 adding manifests
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1034 adding file changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1035 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1036 new changesets cac2cead0ff0 (1 drafts)
32636
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1037 (run 'hg heads .' to see heads, 'hg merge' to merge)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1038 $ hg -R ./client-racy pull
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1039 pulling from ssh://user@dummy/server
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1040 searching for changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1041 adding changesets
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1042 adding manifests
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1043 adding file changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1044 added 1 changesets with 0 changes to 0 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1045 new changesets be705100c623 (1 drafts)
32636
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1046 (run 'hg update' to get a working copy)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1047
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1048 $ hg -R server graph
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1049 o cac2cead0ff0 C-L (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1050 |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1051 | o be705100c623 C-K (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1052 |/|
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1053 | o d603e2c0cdd7 C-E (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1054 | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1055 o | 59e76faf78bd C-D (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1056 | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1057 | | o 89420bf00fae C-J (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1058 | | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1059 | | | o b35ed749f288 C-I (my-second-test-branch)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1060 | | |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1061 | | o 75d69cba5402 C-G (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1062 | | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1063 | | | o 833be552cfe6 C-H (my-first-test-branch)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1064 | | |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1065 | | o d9e379a8c432 C-F (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1066 | | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1067 | | o 51c544a58128 C-C (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1068 | |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1069 o | a9149a1428e2 C-B (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1070 | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1071 | o 98217d5a1659 C-A (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1072 |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1073 @ 842e2fac6304 C-ROOT (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1074
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1075
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1076 Creating changesets
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1077
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1078 (update existing head)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1079
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1080 $ echo aaa >> client-other/a
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1081 $ hg -R client-other/ commit -m "C-M"
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1082
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1083 (merge heads)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1084
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1085 $ hg -R client-racy/ merge 'desc("C-K")'
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1086 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1087 (branch merge, don't forget to commit)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1088 $ hg -R client-racy/ commit -m "C-N"
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1089
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1090 Pushing
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1091
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1092 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1093
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1094 $ waiton $TESTTMP/readyfile
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1095
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1096 $ hg -R client-other push -fr 'tip' --new-branch
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1097 pushing to ssh://user@dummy/server
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1098 searching for changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1099 remote: adding changesets
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1100 remote: adding manifests
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1101 remote: adding file changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1102 remote: added 1 changesets with 1 changes to 1 files
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1103
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1104 $ release $TESTTMP/watchfile
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1105
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1106 Check the result of the push
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1107
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1108 $ cat ./push-log
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1109 pushing to ssh://user@dummy/server
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1110 searching for changes
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1111 wrote ready: $TESTTMP/readyfile
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1112 waiting on: $TESTTMP/watchfile
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1113 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
1114 'remote repository changed while pushing - please try again'
32636
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1115
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1116 $ hg -R server graph
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1117 o 6fd3090135df C-M (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1118 |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1119 o be705100c623 C-K (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1120 |\
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1121 | o d603e2c0cdd7 C-E (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1122 | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1123 +---o cac2cead0ff0 C-L (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1124 | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1125 o | 59e76faf78bd C-D (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1126 | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1127 | | o 89420bf00fae C-J (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1128 | | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1129 | | | o b35ed749f288 C-I (my-second-test-branch)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1130 | | |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1131 | | o 75d69cba5402 C-G (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1132 | | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1133 | | | o 833be552cfe6 C-H (my-first-test-branch)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1134 | | |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1135 | | o d9e379a8c432 C-F (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1136 | | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1137 | | o 51c544a58128 C-C (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1138 | |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1139 o | a9149a1428e2 C-B (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1140 | |
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1141 | o 98217d5a1659 C-A (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1142 |/
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1143 @ 842e2fac6304 C-ROOT (default)
da5cf8cc5aad test: add a push race case where the raced push touch multiple heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32635
diff changeset
1144
32637
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1145
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1146 racing commit push a new head behind another named branch
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1147 ---------------------------------------------------------
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1148
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1149 non-continuous branch are valid case, we tests for them.
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1150
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1151 # b (branch default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1152 # |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1153 # o (branch foo)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1154 # |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1155 # | a (raced, branch default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1156 # |/
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1157 # * (branch foo)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1158 # |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1159 # * (branch default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1160
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1161 (resync-all + other branch)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1162
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1163 $ hg -R ./server pull ./client-racy
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1164 pulling from ./client-racy
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1165 searching for changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1166 adding changesets
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1167 adding manifests
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1168 adding file changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1169 added 1 changesets with 0 changes to 0 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1170 new changesets 866a66e18630 (1 drafts)
32637
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1171 (run 'hg update' to get a working copy)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1172
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1173 (creates named branch on head)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1174
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1175 $ hg -R ./server/ up 'desc("C-N")'
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1176 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1177 $ hg -R ./server/ branch other
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1178 marked working directory as branch other
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1179 $ hg -R ./server/ ci -m "C-Z"
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1180 $ hg -R ./server/ up null
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1181 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1182
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1183 (sync client)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1184
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1185 $ hg -R ./client-other pull
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1186 pulling from ssh://user@dummy/server
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1187 searching for changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1188 adding changesets
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1189 adding manifests
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1190 adding file changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1191 added 2 changesets with 0 changes to 0 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1192 new changesets 866a66e18630:55a6f1c01b48 (2 drafts)
32637
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1193 (run 'hg update' to get a working copy)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1194 $ hg -R ./client-racy pull
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1195 pulling from ssh://user@dummy/server
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1196 searching for changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1197 adding changesets
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1198 adding manifests
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1199 adding file changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1200 added 2 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1201 new changesets 6fd3090135df:55a6f1c01b48 (2 drafts)
32637
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1202 (run 'hg heads .' to see heads, 'hg merge' to merge)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1203
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1204 $ hg -R server graph
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1205 o 55a6f1c01b48 C-Z (other)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1206 |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1207 o 866a66e18630 C-N (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1208 |\
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1209 +---o 6fd3090135df C-M (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1210 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1211 | o cac2cead0ff0 C-L (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1212 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1213 o | be705100c623 C-K (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1214 |\|
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1215 o | d603e2c0cdd7 C-E (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1216 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1217 | o 59e76faf78bd C-D (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1218 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1219 | | o 89420bf00fae C-J (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1220 | | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1221 | | | o b35ed749f288 C-I (my-second-test-branch)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1222 | | |/
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1223 | | o 75d69cba5402 C-G (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1224 | | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1225 | | | o 833be552cfe6 C-H (my-first-test-branch)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1226 | | |/
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1227 | | o d9e379a8c432 C-F (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1228 | | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1229 +---o 51c544a58128 C-C (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1230 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1231 | o a9149a1428e2 C-B (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1232 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1233 o | 98217d5a1659 C-A (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1234 |/
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1235 o 842e2fac6304 C-ROOT (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1236
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1237
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1238 Creating changesets
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1239
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1240 (update default head through another named branch one)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1241
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1242 $ hg -R client-other/ up 'desc("C-Z")'
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1243 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1244 $ echo aaa >> client-other/a
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1245 $ hg -R client-other/ commit -m "C-O"
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1246 $ echo aaa >> client-other/a
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1247 $ hg -R client-other/ branch --force default
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1248 marked working directory as branch default
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1249 $ hg -R client-other/ commit -m "C-P"
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1250 created new head
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1251
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1252 (update default head)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1253
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1254 $ hg -R client-racy/ up 'desc("C-Z")'
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1255 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1256 $ echo bbb >> client-other/a
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1257 $ hg -R client-racy/ branch --force default
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1258 marked working directory as branch default
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1259 $ hg -R client-racy/ commit -m "C-Q"
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1260 created new head
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1261
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1262 Pushing
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1263
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1264 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1265
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1266 $ waiton $TESTTMP/readyfile
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1267
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1268 $ hg -R client-other push -fr 'tip' --new-branch
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1269 pushing to ssh://user@dummy/server
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1270 searching for changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1271 remote: adding changesets
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1272 remote: adding manifests
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1273 remote: adding file changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1274 remote: added 2 changesets with 1 changes to 1 files
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1275
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1276 $ release $TESTTMP/watchfile
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1277
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1278 Check the result of the push
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1279
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1280 $ cat ./push-log
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1281 pushing to ssh://user@dummy/server
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1282 searching for changes
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1283 wrote ready: $TESTTMP/readyfile
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1284 waiting on: $TESTTMP/watchfile
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1285 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
1286 'remote repository changed while pushing - please try again'
32637
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1287
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1288 $ hg -R server graph
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1289 o 1b58ee3f79e5 C-P (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1290 |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1291 o d0a85b2252a9 C-O (other)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1292 |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1293 o 55a6f1c01b48 C-Z (other)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1294 |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1295 o 866a66e18630 C-N (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1296 |\
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1297 +---o 6fd3090135df C-M (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1298 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1299 | o cac2cead0ff0 C-L (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1300 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1301 o | be705100c623 C-K (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1302 |\|
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1303 o | d603e2c0cdd7 C-E (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1304 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1305 | o 59e76faf78bd C-D (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1306 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1307 | | o 89420bf00fae C-J (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1308 | | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1309 | | | o b35ed749f288 C-I (my-second-test-branch)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1310 | | |/
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1311 | | o 75d69cba5402 C-G (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1312 | | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1313 | | | o 833be552cfe6 C-H (my-first-test-branch)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1314 | | |/
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1315 | | o d9e379a8c432 C-F (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1316 | | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1317 +---o 51c544a58128 C-C (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1318 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1319 | o a9149a1428e2 C-B (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1320 | |
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1321 o | 98217d5a1659 C-A (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1322 |/
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1323 o 842e2fac6304 C-ROOT (default)
9234d2cb24a5 test: add a push race case where non-contiguous branch head are created
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32636
diff changeset
1324
32638
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1325
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1326 raced commit push a new head behind another named branch
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1327 ---------------------------------------------------------
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1328
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1329 non-continuous branch are valid case, we tests for them.
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1330
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1331 # b (raced branch default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1332 # |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1333 # o (branch foo)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1334 # |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1335 # | a (branch default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1336 # |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1337 # * (branch foo)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1338 # |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1339 # * (branch default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1340
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1341 (resync-all)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1342
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1343 $ hg -R ./server pull ./client-racy
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1344 pulling from ./client-racy
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1345 searching for changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1346 adding changesets
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1347 adding manifests
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1348 adding file changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1349 added 1 changesets with 0 changes to 0 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1350 new changesets b0ee3d6f51bc (1 drafts)
32638
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1351 (run 'hg heads .' to see heads, 'hg merge' to merge)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1352 $ hg -R ./client-other pull
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1353 pulling from ssh://user@dummy/server
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1354 searching for changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1355 adding changesets
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1356 adding manifests
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1357 adding file changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1358 added 1 changesets with 0 changes to 0 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1359 new changesets b0ee3d6f51bc (1 drafts)
32638
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1360 (run 'hg heads .' to see heads, 'hg merge' to merge)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1361 $ hg -R ./client-racy pull
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1362 pulling from ssh://user@dummy/server
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1363 searching for changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1364 adding changesets
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1365 adding manifests
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1366 adding file changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1367 added 2 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1368 new changesets d0a85b2252a9:1b58ee3f79e5 (2 drafts)
32638
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1369 (run 'hg heads .' to see heads, 'hg merge' to merge)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1370
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1371 $ hg -R server graph
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1372 o b0ee3d6f51bc C-Q (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1373 |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1374 | o 1b58ee3f79e5 C-P (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1375 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1376 | o d0a85b2252a9 C-O (other)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1377 |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1378 o 55a6f1c01b48 C-Z (other)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1379 |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1380 o 866a66e18630 C-N (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1381 |\
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1382 +---o 6fd3090135df C-M (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1383 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1384 | o cac2cead0ff0 C-L (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1385 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1386 o | be705100c623 C-K (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1387 |\|
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1388 o | d603e2c0cdd7 C-E (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1389 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1390 | o 59e76faf78bd C-D (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1391 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1392 | | o 89420bf00fae C-J (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1393 | | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1394 | | | o b35ed749f288 C-I (my-second-test-branch)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1395 | | |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1396 | | o 75d69cba5402 C-G (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1397 | | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1398 | | | o 833be552cfe6 C-H (my-first-test-branch)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1399 | | |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1400 | | o d9e379a8c432 C-F (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1401 | | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1402 +---o 51c544a58128 C-C (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1403 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1404 | o a9149a1428e2 C-B (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1405 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1406 o | 98217d5a1659 C-A (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1407 |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1408 o 842e2fac6304 C-ROOT (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1409
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1410
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1411 Creating changesets
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1412
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1413 (update 'other' named branch head)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1414
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1415 $ hg -R client-other/ up 'desc("C-P")'
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1416 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1417 $ echo aaa >> client-other/a
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1418 $ hg -R client-other/ branch --force other
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1419 marked working directory as branch other
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1420 $ hg -R client-other/ commit -m "C-R"
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1421 created new head
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1422
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1423 (update 'other named brnach through a 'default' changeset')
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1424
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1425 $ hg -R client-racy/ up 'desc("C-P")'
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1426 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1427 $ echo bbb >> client-racy/a
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1428 $ hg -R client-racy/ commit -m "C-S"
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1429 $ echo bbb >> client-racy/a
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1430 $ hg -R client-racy/ branch --force other
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1431 marked working directory as branch other
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1432 $ hg -R client-racy/ commit -m "C-T"
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1433 created new head
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1434
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1435 Pushing
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1436
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1437 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1438
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1439 $ waiton $TESTTMP/readyfile
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1440
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1441 $ hg -R client-other push -fr 'tip' --new-branch
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1442 pushing to ssh://user@dummy/server
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1443 searching for changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1444 remote: adding changesets
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1445 remote: adding manifests
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1446 remote: adding file changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1447 remote: added 1 changesets with 1 changes to 1 files
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1448
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1449 $ release $TESTTMP/watchfile
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1450
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1451 Check the result of the push
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1452
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1453 $ cat ./push-log
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1454 pushing to ssh://user@dummy/server
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1455 searching for changes
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1456 wrote ready: $TESTTMP/readyfile
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1457 waiting on: $TESTTMP/watchfile
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1458 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
1459 'remote repository changed while pushing - please try again'
32638
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1460
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1461 $ hg -R server graph
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1462 o de7b9e2ba3f6 C-R (other)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1463 |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1464 o 1b58ee3f79e5 C-P (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1465 |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1466 o d0a85b2252a9 C-O (other)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1467 |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1468 | o b0ee3d6f51bc C-Q (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1469 |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1470 o 55a6f1c01b48 C-Z (other)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1471 |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1472 o 866a66e18630 C-N (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1473 |\
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1474 +---o 6fd3090135df C-M (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1475 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1476 | o cac2cead0ff0 C-L (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1477 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1478 o | be705100c623 C-K (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1479 |\|
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1480 o | d603e2c0cdd7 C-E (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1481 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1482 | o 59e76faf78bd C-D (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1483 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1484 | | o 89420bf00fae C-J (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1485 | | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1486 | | | o b35ed749f288 C-I (my-second-test-branch)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1487 | | |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1488 | | o 75d69cba5402 C-G (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1489 | | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1490 | | | o 833be552cfe6 C-H (my-first-test-branch)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1491 | | |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1492 | | o d9e379a8c432 C-F (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1493 | | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1494 +---o 51c544a58128 C-C (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1495 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1496 | o a9149a1428e2 C-B (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1497 | |
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1498 o | 98217d5a1659 C-A (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1499 |/
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1500 o 842e2fac6304 C-ROOT (default)
4f6645ec6bb2 test: add the mirror push race case for non-contiguous branch head
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32637
diff changeset
1501
32669
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1502
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1503 raced commit push a new head obsoleting the one touched by the racing push
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1504 --------------------------------------------------------------------------
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1505
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1506 # b (racing)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1507 # |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1508 # ø⇠◔ a (raced)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1509 # |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1510 # *
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1511
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1512 (resync-all)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1513
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1514 $ hg -R ./server pull ./client-racy
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1515 pulling from ./client-racy
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1516 searching for changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1517 adding changesets
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1518 adding manifests
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1519 adding file changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1520 added 2 changesets with 2 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1521 new changesets 2efd43f7b5ba:3d57ed3c1091 (2 drafts)
32669
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1522 (run 'hg heads .' to see heads, 'hg merge' to merge)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1523 $ hg -R ./client-other pull
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1524 pulling from ssh://user@dummy/server
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1525 searching for changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1526 adding changesets
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1527 adding manifests
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1528 adding file changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1529 added 2 changesets with 2 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1530 new changesets 2efd43f7b5ba:3d57ed3c1091 (2 drafts)
32669
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1531 (run 'hg heads' to see heads, 'hg merge' to merge)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1532 $ hg -R ./client-racy pull
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1533 pulling from ssh://user@dummy/server
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1534 searching for changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1535 adding changesets
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1536 adding manifests
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1537 adding file changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1538 added 1 changesets with 1 changes to 1 files (+1 heads)
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1539 new changesets de7b9e2ba3f6 (1 drafts)
32669
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1540 (run 'hg heads' to see heads, 'hg merge' to merge)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1541
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1542 $ hg -R server graph
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1543 o 3d57ed3c1091 C-T (other)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1544 |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1545 o 2efd43f7b5ba C-S (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1546 |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1547 | o de7b9e2ba3f6 C-R (other)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1548 |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1549 o 1b58ee3f79e5 C-P (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1550 |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1551 o d0a85b2252a9 C-O (other)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1552 |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1553 | o b0ee3d6f51bc C-Q (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1554 |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1555 o 55a6f1c01b48 C-Z (other)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1556 |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1557 o 866a66e18630 C-N (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1558 |\
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1559 +---o 6fd3090135df C-M (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1560 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1561 | o cac2cead0ff0 C-L (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1562 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1563 o | be705100c623 C-K (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1564 |\|
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1565 o | d603e2c0cdd7 C-E (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1566 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1567 | o 59e76faf78bd C-D (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1568 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1569 | | o 89420bf00fae C-J (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1570 | | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1571 | | | o b35ed749f288 C-I (my-second-test-branch)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1572 | | |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1573 | | o 75d69cba5402 C-G (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1574 | | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1575 | | | o 833be552cfe6 C-H (my-first-test-branch)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1576 | | |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1577 | | o d9e379a8c432 C-F (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1578 | | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1579 +---o 51c544a58128 C-C (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1580 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1581 | o a9149a1428e2 C-B (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1582 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1583 o | 98217d5a1659 C-A (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1584 |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1585 o 842e2fac6304 C-ROOT (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1586
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1587
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1588 Creating changesets and markers
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1589
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1590 (continue existing head)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1591
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1592 $ hg -R client-other/ up 'desc("C-Q")'
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1593 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1594 $ echo aaa >> client-other/a
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1595 $ hg -R client-other/ commit -m "C-U"
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1596
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1597 (new topo branch obsoleting that same head)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1598
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1599 $ hg -R client-racy/ up 'desc("C-Z")'
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1600 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1601 $ echo bbb >> client-racy/a
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1602 $ hg -R client-racy/ branch --force default
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1603 marked working directory as branch default
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1604 $ hg -R client-racy/ commit -m "C-V"
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1605 created new head
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1606 $ ID_Q=`hg -R client-racy log -T '{node}\n' -r 'desc("C-Q")'`
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1607 $ ID_V=`hg -R client-racy log -T '{node}\n' -r 'desc("C-V")'`
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1608 $ hg -R client-racy debugobsolete $ID_Q $ID_V
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40870
diff changeset
1609 1 new obsolescence markers
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33314
diff changeset
1610 obsoleted 1 changesets
32669
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1611
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1612 Pushing
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1613
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1614 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1615
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1616 $ waiton $TESTTMP/readyfile
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1617
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1618 $ hg -R client-other push -fr 'tip' --new-branch
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1619 pushing to ssh://user@dummy/server
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1620 searching for changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1621 remote: adding changesets
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1622 remote: adding manifests
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1623 remote: adding file changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1624 remote: added 1 changesets with 0 changes to 0 files
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1625
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1626 $ release $TESTTMP/watchfile
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1627
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1628 Check the result of the push
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1629
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1630 $ cat ./push-log
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1631 pushing to ssh://user@dummy/server
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1632 searching for changes
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1633 wrote ready: $TESTTMP/readyfile
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1634 waiting on: $TESTTMP/watchfile
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1635 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
1636 'remote repository changed while pushing - please try again'
32669
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1637
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1638 $ hg -R server debugobsolete
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1639 $ hg -R server graph
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1640 o a98a47d8b85b C-U (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1641 |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1642 o b0ee3d6f51bc C-Q (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1643 |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1644 | o 3d57ed3c1091 C-T (other)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1645 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1646 | o 2efd43f7b5ba C-S (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1647 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1648 | | o de7b9e2ba3f6 C-R (other)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1649 | |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1650 | o 1b58ee3f79e5 C-P (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1651 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1652 | o d0a85b2252a9 C-O (other)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1653 |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1654 o 55a6f1c01b48 C-Z (other)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1655 |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1656 o 866a66e18630 C-N (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1657 |\
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1658 +---o 6fd3090135df C-M (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1659 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1660 | o cac2cead0ff0 C-L (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1661 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1662 o | be705100c623 C-K (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1663 |\|
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1664 o | d603e2c0cdd7 C-E (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1665 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1666 | o 59e76faf78bd C-D (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1667 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1668 | | o 89420bf00fae C-J (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1669 | | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1670 | | | o b35ed749f288 C-I (my-second-test-branch)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1671 | | |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1672 | | o 75d69cba5402 C-G (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1673 | | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1674 | | | o 833be552cfe6 C-H (my-first-test-branch)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1675 | | |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1676 | | o d9e379a8c432 C-F (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1677 | | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1678 +---o 51c544a58128 C-C (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1679 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1680 | o a9149a1428e2 C-B (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1681 | |
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1682 o | 98217d5a1659 C-A (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1683 |/
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1684 o 842e2fac6304 C-ROOT (default)
6ac367b6ae8a test: add a push race case where obsoleted head is updated
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32638
diff changeset
1685
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1686
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1687 racing commit push a new head obsoleting the one touched by the raced push
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1688 --------------------------------------------------------------------------
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1689
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1690 (mirror test case of the previous one
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1691
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1692 # a (raced branch default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1693 # |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1694 # ø⇠◔ b (racing)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1695 # |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1696 # *
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1697
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1698 (resync-all)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1699
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1700 $ hg -R ./server pull ./client-racy
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1701 pulling from ./client-racy
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1702 searching for changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1703 adding changesets
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1704 adding manifests
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1705 adding file changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1706 added 1 changesets with 1 changes to 1 files (+1 heads)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1707 1 new obsolescence markers
33252
53b3a1968aa6 obsolete: reports the number of local changeset obsoleted when unbundling
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32892
diff changeset
1708 obsoleted 1 changesets
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
1709 1 new orphan changesets
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1710 new changesets 720c5163ecf6 (1 drafts)
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1711 (run 'hg heads .' to see heads, 'hg merge' to merge)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1712 $ hg -R ./client-other pull
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1713 pulling from ssh://user@dummy/server
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1714 searching for changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1715 adding changesets
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1716 adding manifests
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1717 adding file changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1718 added 1 changesets with 1 changes to 1 files (+1 heads)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1719 1 new obsolescence markers
33252
53b3a1968aa6 obsolete: reports the number of local changeset obsoleted when unbundling
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32892
diff changeset
1720 obsoleted 1 changesets
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
1721 1 new orphan changesets
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1722 new changesets 720c5163ecf6 (1 drafts)
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1723 (run 'hg heads .' to see heads, 'hg merge' to merge)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1724 $ hg -R ./client-racy pull
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1725 pulling from ssh://user@dummy/server
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1726 searching for changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1727 adding changesets
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1728 adding manifests
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1729 adding file changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1730 added 1 changesets with 0 changes to 0 files
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
1731 1 new orphan changesets
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
1732 new changesets a98a47d8b85b (1 drafts)
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1733 (run 'hg update' to get a working copy)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1734
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1735 $ hg -R server debugobsolete
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1736 b0ee3d6f51bc4c0ca6d4f2907708027a6c376233 720c5163ecf64dcc6216bee2d62bf3edb1882499 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1737 $ hg -R server graph
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1738 o 720c5163ecf6 C-V (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1739 |
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34865
diff changeset
1740 | * a98a47d8b85b C-U (default)
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1741 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1742 | x b0ee3d6f51bc C-Q (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1743 |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1744 | o 3d57ed3c1091 C-T (other)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1745 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1746 | o 2efd43f7b5ba C-S (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1747 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1748 | | o de7b9e2ba3f6 C-R (other)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1749 | |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1750 | o 1b58ee3f79e5 C-P (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1751 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1752 | o d0a85b2252a9 C-O (other)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1753 |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1754 o 55a6f1c01b48 C-Z (other)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1755 |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1756 o 866a66e18630 C-N (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1757 |\
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1758 +---o 6fd3090135df C-M (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1759 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1760 | o cac2cead0ff0 C-L (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1761 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1762 o | be705100c623 C-K (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1763 |\|
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1764 o | d603e2c0cdd7 C-E (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1765 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1766 | o 59e76faf78bd C-D (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1767 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1768 | | o 89420bf00fae C-J (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1769 | | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1770 | | | o b35ed749f288 C-I (my-second-test-branch)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1771 | | |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1772 | | o 75d69cba5402 C-G (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1773 | | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1774 | | | o 833be552cfe6 C-H (my-first-test-branch)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1775 | | |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1776 | | o d9e379a8c432 C-F (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1777 | | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1778 +---o 51c544a58128 C-C (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1779 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1780 | o a9149a1428e2 C-B (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1781 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1782 o | 98217d5a1659 C-A (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1783 |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1784 o 842e2fac6304 C-ROOT (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1785
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1786
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1787 Creating changesets and markers
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1788
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1789 (new topo branch obsoleting that same head)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1790
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1791 $ hg -R client-other/ up 'desc("C-Q")'
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1792 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1793 $ echo bbb >> client-other/a
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1794 $ hg -R client-other/ branch --force default
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1795 marked working directory as branch default
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1796 $ hg -R client-other/ commit -m "C-W"
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
1797 1 new orphan changesets
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1798 created new head
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1799 $ ID_V=`hg -R client-other log -T '{node}\n' -r 'desc("C-V")'`
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1800 $ ID_W=`hg -R client-other log -T '{node}\n' -r 'desc("C-W")'`
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1801 $ hg -R client-other debugobsolete $ID_V $ID_W
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40870
diff changeset
1802 1 new obsolescence markers
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 33314
diff changeset
1803 obsoleted 1 changesets
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1804
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1805 (continue the same head)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1806
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1807 $ echo aaa >> client-racy/a
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1808 $ hg -R client-racy/ commit -m "C-X"
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1809
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1810 Pushing
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1811
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1812 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1813
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1814 $ waiton $TESTTMP/readyfile
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1815
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1816 $ hg -R client-other push -fr 'tip' --new-branch
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1817 pushing to ssh://user@dummy/server
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1818 searching for changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1819 remote: adding changesets
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1820 remote: adding manifests
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1821 remote: adding file changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1822 remote: added 1 changesets with 0 changes to 1 files (+1 heads)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1823 remote: 1 new obsolescence markers
33252
53b3a1968aa6 obsolete: reports the number of local changeset obsoleted when unbundling
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32892
diff changeset
1824 remote: obsoleted 1 changesets
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35508
diff changeset
1825 remote: 1 new orphan changesets
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1826
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1827 $ release $TESTTMP/watchfile
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1828
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1829 Check the result of the push
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1830
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1831 $ cat ./push-log
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1832 pushing to ssh://user@dummy/server
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1833 searching for changes
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1834 wrote ready: $TESTTMP/readyfile
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1835 waiting on: $TESTTMP/watchfile
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1836 abort: push failed:
40147
58ebf5083843 push: add "remote" to 'repository changed while pushing' messages (issue5971)
Taapas Agrawal <taapas2897@gmail.com>
parents: 39707
diff changeset
1837 'remote repository changed while pushing - please try again'
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1838
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1839 $ hg -R server debugobsolete
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1840 b0ee3d6f51bc4c0ca6d4f2907708027a6c376233 720c5163ecf64dcc6216bee2d62bf3edb1882499 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1841 720c5163ecf64dcc6216bee2d62bf3edb1882499 39bc0598afe90ab18da460bafecc0fa953b77596 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1842 $ hg -R server graph --hidden
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34865
diff changeset
1843 * 39bc0598afe9 C-W (default)
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1844 |
35508
9b3f95d9783d graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 34865
diff changeset
1845 | * a98a47d8b85b C-U (default)
32670
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1846 |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1847 x b0ee3d6f51bc C-Q (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1848 |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1849 | o 3d57ed3c1091 C-T (other)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1850 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1851 | o 2efd43f7b5ba C-S (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1852 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1853 | | o de7b9e2ba3f6 C-R (other)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1854 | |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1855 | o 1b58ee3f79e5 C-P (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1856 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1857 | o d0a85b2252a9 C-O (other)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1858 |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1859 | x 720c5163ecf6 C-V (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1860 |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1861 o 55a6f1c01b48 C-Z (other)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1862 |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1863 o 866a66e18630 C-N (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1864 |\
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1865 +---o 6fd3090135df C-M (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1866 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1867 | o cac2cead0ff0 C-L (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1868 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1869 o | be705100c623 C-K (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1870 |\|
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1871 o | d603e2c0cdd7 C-E (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1872 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1873 | o 59e76faf78bd C-D (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1874 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1875 | | o 89420bf00fae C-J (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1876 | | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1877 | | | o b35ed749f288 C-I (my-second-test-branch)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1878 | | |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1879 | | o 75d69cba5402 C-G (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1880 | | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1881 | | | o 833be552cfe6 C-H (my-first-test-branch)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1882 | | |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1883 | | o d9e379a8c432 C-F (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1884 | | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1885 +---o 51c544a58128 C-C (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1886 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1887 | o a9149a1428e2 C-B (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1888 | |
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1889 o | 98217d5a1659 C-A (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1890 |/
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1891 o 842e2fac6304 C-ROOT (default)
41b8cfe85383 test: add a push race case where the updated head is obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32669
diff changeset
1892