##// END OF EJS Templates
tests: fix misspelling of supersede...
av6 -
r50061:5996640f default
parent child Browse files
Show More
@@ -1,85 +1,85 b''
1 1 ====================================
2 2 Testing head checking code: Case C-2
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 11 Category C: checking case were the branch is only partially obsoleted.
12 12 TestCase 1: 2 changeset branch, only the head is rewritten
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 .. * 1 new changesets branches superceeding only the head of the old one
20 .. * 1 new changesets branches superseding only the head of the old one
21 21 .. * base of the old branch is still alive
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push denied
26 26 ..
27 27 .. graph-summary:
28 28 ..
29 29 .. B ΓΈβ‡ β—” B'
30 30 .. | |
31 31 .. A β—‹ |
32 32 .. |/
33 33 .. β—‹
34 34
35 35 $ . $TESTDIR/testlib/push-checkheads-util.sh
36 36
37 37 Test setup
38 38 ----------
39 39
40 40 $ mkdir C1
41 41 $ cd C1
42 42 $ setuprepos
43 43 creating basic server and client repo
44 44 updating to branch default
45 45 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
46 46 $ cd server
47 47 $ mkcommit B0
48 48 $ cd ../client
49 49 $ hg pull
50 50 pulling from $TESTTMP/C1/server
51 51 searching for changes
52 52 adding changesets
53 53 adding manifests
54 54 adding file changes
55 55 added 1 changesets with 1 changes to 1 files
56 56 new changesets d73caddc5533 (1 drafts)
57 57 (run 'hg update' to get a working copy)
58 58 $ hg up 0
59 59 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
60 60 $ mkcommit B1
61 61 created new head
62 62 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
63 63 1 new obsolescence markers
64 64 obsoleted 1 changesets
65 65 $ hg log -G --hidden
66 66 @ 25c56d33e4c4 (draft): B1
67 67 |
68 68 | x d73caddc5533 (draft): B0
69 69 | |
70 70 | o 8aaa48160adc (draft): A0
71 71 |/
72 72 o 1e4be0697311 (public): root
73 73
74 74
75 75 Actual testing
76 76 --------------
77 77
78 78 $ hg push
79 79 pushing to $TESTTMP/C1/server
80 80 searching for changes
81 81 abort: push creates new remote head 25c56d33e4c4
82 82 (merge or see 'hg help push' for details about pushing new heads)
83 83 [20]
84 84
85 85 $ cd ../..
@@ -1,86 +1,86 b''
1 1 ====================================
2 2 Testing head checking code: Case C-2
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 11 Category C: case were the branch is only partially obsoleted
12 12 TestCase 2: 2 changeset branch, only the base is rewritten
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 .. * 1 new changesets branches superceeding only the base of the old one
20 .. * 1 new changesets branches superseding only the base of the old one
21 21 .. * The old branch is still alive (base is obsolete, head is alive)
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push denied
26 26 ..
27 27 .. graph-summary:
28 28 ..
29 29 .. B β—‹
30 30 .. |
31 31 .. A ΓΈβ‡ β—” A'
32 32 .. |/
33 33 .. ●
34 34
35 35 $ . $TESTDIR/testlib/push-checkheads-util.sh
36 36
37 37 Test setup
38 38 ----------
39 39
40 40 $ mkdir C2
41 41 $ cd C2
42 42 $ setuprepos
43 43 creating basic server and client repo
44 44 updating to branch default
45 45 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
46 46 $ cd server
47 47 $ mkcommit B0
48 48 $ cd ../client
49 49 $ hg pull
50 50 pulling from $TESTTMP/C2/server
51 51 searching for changes
52 52 adding changesets
53 53 adding manifests
54 54 adding file changes
55 55 added 1 changesets with 1 changes to 1 files
56 56 new changesets d73caddc5533 (1 drafts)
57 57 (run 'hg update' to get a working copy)
58 58 $ hg up 0
59 59 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
60 60 $ mkcommit A1
61 61 created new head
62 62 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
63 63 1 new obsolescence markers
64 64 obsoleted 1 changesets
65 65 1 new orphan changesets
66 66 $ hg log -G --hidden
67 67 @ f6082bc4ffef (draft): A1
68 68 |
69 69 | * d73caddc5533 (draft): B0
70 70 | |
71 71 | x 8aaa48160adc (draft): A0
72 72 |/
73 73 o 1e4be0697311 (public): root
74 74
75 75
76 76 Actual testing
77 77 --------------
78 78
79 79 $ hg push --rev 'desc(A1)'
80 80 pushing to $TESTTMP/C2/server
81 81 searching for changes
82 82 abort: push creates new remote head f6082bc4ffef
83 83 (merge or see 'hg help push' for details about pushing new heads)
84 84 [20]
85 85
86 86 $ cd ../..
@@ -1,92 +1,92 b''
1 1 ====================================
2 2 Testing head checking code: Case B-2
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 11 Category B: simple case involving pruned changesets
12 TestCase 2: multi-changeset branch, head is pruned, rest is superceeded
12 TestCase 2: multi-changeset branch, head is pruned, rest is superseded
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 20 .. * old head is pruned
21 21 .. * 1 new branch succeeding to the other changeset in the old branch
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push allowed
26 26 ..
27 27 .. graph-summary:
28 28 ..
29 29 .. B βŠ—
30 30 .. |
31 31 .. A ΓΈβ‡ β—” A'
32 32 .. |/
33 33 .. ●
34 34
35 35 $ . $TESTDIR/testlib/push-checkheads-util.sh
36 36
37 37 Test setup
38 38 ----------
39 39
40 40 $ mkdir B2
41 41 $ cd B2
42 42 $ setuprepos
43 43 creating basic server and client repo
44 44 updating to branch default
45 45 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
46 46 $ cd server
47 47 $ mkcommit B0
48 48 $ cd ../client
49 49 $ hg pull
50 50 pulling from $TESTTMP/B2/server
51 51 searching for changes
52 52 adding changesets
53 53 adding manifests
54 54 adding file changes
55 55 added 1 changesets with 1 changes to 1 files
56 56 new changesets d73caddc5533 (1 drafts)
57 57 (run 'hg update' to get a working copy)
58 58 $ hg up 0
59 59 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
60 60 $ mkcommit A1
61 61 created new head
62 62 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
63 63 1 new obsolescence markers
64 64 obsoleted 1 changesets
65 65 1 new orphan changesets
66 66 $ hg debugobsolete --record-parents `getid "desc(B0)"`
67 67 1 new obsolescence markers
68 68 obsoleted 1 changesets
69 69 $ hg log -G --hidden
70 70 @ f6082bc4ffef (draft): A1
71 71 |
72 72 | x d73caddc5533 (draft): B0
73 73 | |
74 74 | x 8aaa48160adc (draft): A0
75 75 |/
76 76 o 1e4be0697311 (public): root
77 77
78 78
79 79 Actual testing
80 80 --------------
81 81
82 82 $ hg push
83 83 pushing to $TESTTMP/B2/server
84 84 searching for changes
85 85 adding changesets
86 86 adding manifests
87 87 adding file changes
88 88 added 1 changesets with 1 changes to 1 files (+1 heads)
89 89 2 new obsolescence markers
90 90 obsoleted 2 changesets
91 91
92 92 $ cd ../..
@@ -1,93 +1,93 b''
1 1 ====================================
2 2 Testing head checking code: Case B-3
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 11 Category B: simple case involving pruned changesets
12 TestCase 3: multi-changeset branch, other is pruned, rest is superceeded
12 TestCase 3: multi-changeset branch, other is pruned, rest is superseded
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 .. * old head is superceeded
20 .. * old head is superseded
21 21 .. * old other is pruned
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push allowed
26 26 ..
27 27 .. graph-summary:
28 28 ..
29 29 .. B ΓΈβ‡ β—” B'
30 30 .. | |
31 31 .. A βŠ— |
32 32 .. |/
33 33 .. ●
34 34
35 35 $ . $TESTDIR/testlib/push-checkheads-util.sh
36 36
37 37 Test setup
38 38 ----------
39 39
40 40 $ mkdir B3
41 41 $ cd B3
42 42 $ setuprepos
43 43 creating basic server and client repo
44 44 updating to branch default
45 45 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
46 46 $ cd server
47 47 $ mkcommit B0
48 48 $ cd ../client
49 49 $ hg pull
50 50 pulling from $TESTTMP/B3/server
51 51 searching for changes
52 52 adding changesets
53 53 adding manifests
54 54 adding file changes
55 55 added 1 changesets with 1 changes to 1 files
56 56 new changesets d73caddc5533 (1 drafts)
57 57 (run 'hg update' to get a working copy)
58 58 $ hg up 0
59 59 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
60 60 $ mkcommit B1
61 61 created new head
62 62 $ hg debugobsolete --record-parents `getid "desc(A0)"`
63 63 1 new obsolescence markers
64 64 obsoleted 1 changesets
65 65 1 new orphan changesets
66 66 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
67 67 1 new obsolescence markers
68 68 obsoleted 1 changesets
69 69 $ hg log -G --hidden
70 70 @ 25c56d33e4c4 (draft): B1
71 71 |
72 72 | x d73caddc5533 (draft): B0
73 73 | |
74 74 | x 8aaa48160adc (draft): A0
75 75 |/
76 76 o 1e4be0697311 (public): root
77 77
78 78
79 79 Actual testing
80 80 --------------
81 81
82 82 $ hg push
83 83 pushing to $TESTTMP/B3/server
84 84 searching for changes
85 85 adding changesets
86 86 adding manifests
87 87 adding file changes
88 88 added 1 changesets with 1 changes to 1 files (+1 heads)
89 89 2 new obsolescence markers
90 90 obsoleted 2 changesets
91 91
92 92 $ cd ../..
93 93
@@ -1,101 +1,101 b''
1 1 ====================================
2 2 Testing head checking code: Case B-5
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 11 Category B: simple case involving pruned changesets
12 TestCase 5: multi-changeset branch, mix of pruned and superceeded
12 TestCase 5: multi-changeset branch, mix of pruned and superseded
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 3 changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 20 .. * old head is pruned
21 .. * old mid is superceeded
21 .. * old mid is superseded
22 22 .. * old root is pruned
23 23 ..
24 24 .. expected-result:
25 25 ..
26 26 .. * push allowed
27 27 ..
28 28 .. graph-summary:
29 29 ..
30 30 .. B βŠ—
31 31 .. |
32 32 .. A ΓΈβ‡ β—” A'
33 33 .. | |
34 34 .. B βŠ— |
35 35 .. |/
36 36 .. ●
37 37
38 38 $ . $TESTDIR/testlib/push-checkheads-util.sh
39 39
40 40 Test setup
41 41 ----------
42 42
43 43 $ mkdir B5
44 44 $ cd B5
45 45 $ setuprepos
46 46 creating basic server and client repo
47 47 updating to branch default
48 48 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
49 49 $ cd server
50 50 $ mkcommit B0
51 51 $ mkcommit C0
52 52 $ cd ../client
53 53 $ hg pull
54 54 pulling from $TESTTMP/B5/server
55 55 searching for changes
56 56 adding changesets
57 57 adding manifests
58 58 adding file changes
59 59 added 2 changesets with 2 changes to 2 files
60 60 new changesets d73caddc5533:821fb21d0dd2 (2 drafts)
61 61 (run 'hg update' to get a working copy)
62 62 $ hg up 0
63 63 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
64 64 $ mkcommit B1
65 65 created new head
66 66 $ hg debugobsolete --record-parents `getid "desc(A0)"`
67 67 1 new obsolescence markers
68 68 obsoleted 1 changesets
69 69 2 new orphan changesets
70 70 $ hg debugobsolete `getid "desc(B0)"` `getid "desc(B1)"`
71 71 1 new obsolescence markers
72 72 obsoleted 1 changesets
73 73 $ hg debugobsolete --record-parents `getid "desc(C0)"`
74 74 1 new obsolescence markers
75 75 obsoleted 1 changesets
76 76 $ hg log -G --hidden
77 77 @ 25c56d33e4c4 (draft): B1
78 78 |
79 79 | x 821fb21d0dd2 (draft): C0
80 80 | |
81 81 | x d73caddc5533 (draft): B0
82 82 | |
83 83 | x 8aaa48160adc (draft): A0
84 84 |/
85 85 o 1e4be0697311 (public): root
86 86
87 87
88 88 Actual testing
89 89 --------------
90 90
91 91 $ hg push
92 92 pushing to $TESTTMP/B5/server
93 93 searching for changes
94 94 adding changesets
95 95 adding manifests
96 96 adding file changes
97 97 added 1 changesets with 1 changes to 1 files (+1 heads)
98 98 3 new obsolescence markers
99 99 obsoleted 3 changesets
100 100
101 101 $ cd ../..
@@ -1,109 +1,109 b''
1 1 ====================================
2 2 Testing head checking code: Case B-2
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 11 Category B: simple case involving pruned changesets
12 TestCase 2: multi-changeset branch, head is pruned, rest is superceeded, through other
12 TestCase 2: multi-changeset branch, head is pruned, rest is superseded, through other
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 20 .. * old head is rewritten then pruned
21 21 .. * 1 new branch succeeding to the other changeset in the old branch (through another obsolete branch)
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push allowed
26 26 ..
27 27 .. graph-summary:
28 28 ..
29 29 .. B ΓΈβ‡ βŠ— B'
30 30 .. | | A'
31 31 .. A ΓΈβ‡ ΓΈβ‡ β—” A''
32 32 .. |/ /
33 33 .. | /
34 34 .. |/
35 35 .. ●
36 36
37 37 $ . $TESTDIR/testlib/push-checkheads-util.sh
38 38
39 39 Test setup
40 40 ----------
41 41
42 42 $ mkdir B8
43 43 $ cd B8
44 44 $ setuprepos
45 45 creating basic server and client repo
46 46 updating to branch default
47 47 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
48 48 $ cd server
49 49 $ mkcommit B0
50 50 $ cd ../client
51 51 $ hg pull
52 52 pulling from $TESTTMP/B8/server
53 53 searching for changes
54 54 adding changesets
55 55 adding manifests
56 56 adding file changes
57 57 added 1 changesets with 1 changes to 1 files
58 58 new changesets d73caddc5533 (1 drafts)
59 59 (run 'hg update' to get a working copy)
60 60 $ hg up 0
61 61 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
62 62 $ mkcommit A1
63 63 created new head
64 64 $ mkcommit B1
65 65 $ hg up 0
66 66 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
67 67 $ mkcommit A2
68 68 created new head
69 69 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
70 70 1 new obsolescence markers
71 71 obsoleted 1 changesets
72 72 1 new orphan changesets
73 73 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
74 74 1 new obsolescence markers
75 75 obsoleted 1 changesets
76 76 $ hg debugobsolete --record-parents `getid "desc(B1)"`
77 77 1 new obsolescence markers
78 78 obsoleted 1 changesets
79 79 $ hg debugobsolete `getid "desc(A1)" ` `getid "desc(A2)"`
80 80 1 new obsolescence markers
81 81 obsoleted 1 changesets
82 82 $ hg log -G --hidden
83 83 @ c1f8d089020f (draft): A2
84 84 |
85 85 | x 262c8c798096 (draft): B1
86 86 | |
87 87 | x f6082bc4ffef (draft): A1
88 88 |/
89 89 | x d73caddc5533 (draft): B0
90 90 | |
91 91 | x 8aaa48160adc (draft): A0
92 92 |/
93 93 o 1e4be0697311 (public): root
94 94
95 95
96 96 Actual testing
97 97 --------------
98 98
99 99 $ hg push
100 100 pushing to $TESTTMP/B8/server
101 101 searching for changes
102 102 adding changesets
103 103 adding manifests
104 104 adding file changes
105 105 added 1 changesets with 1 changes to 1 files (+1 heads)
106 106 4 new obsolescence markers
107 107 obsoleted 2 changesets
108 108
109 109 $ cd ../..
@@ -1,72 +1,72 b''
1 1 ====================================
2 2 Testing head checking code: Case A-1
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 Category A: simple case involving a branch being superceeded by another.
11 Category A: simple case involving a branch being superseded by another.
12 12 TestCase 1: single-changeset branch
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 1 changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 20 .. * 1 changeset branch succeeding to A
21 21 ..
22 22 .. expected-result:
23 23 ..
24 24 .. * push allowed
25 25 ..
26 26 .. graph-summary:
27 27 ..
28 28 .. A ΓΈβ‡ β—” A'
29 29 .. |/
30 30 .. ●
31 31
32 32 $ . $TESTDIR/testlib/push-checkheads-util.sh
33 33
34 34 Test setup
35 35 ----------
36 36
37 37 $ mkdir A1
38 38 $ cd A1
39 39 $ setuprepos
40 40 creating basic server and client repo
41 41 updating to branch default
42 42 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
43 43 $ cd client
44 44 $ hg up 0
45 45 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
46 46 $ mkcommit A1
47 47 created new head
48 48 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
49 49 1 new obsolescence markers
50 50 obsoleted 1 changesets
51 51 $ hg log -G --hidden
52 52 @ f6082bc4ffef (draft): A1
53 53 |
54 54 | x 8aaa48160adc (draft): A0
55 55 |/
56 56 o 1e4be0697311 (public): root
57 57
58 58
59 59 Actual testing
60 60 --------------
61 61
62 62 $ hg push
63 63 pushing to $TESTTMP/A1/server
64 64 searching for changes
65 65 adding changesets
66 66 adding manifests
67 67 adding file changes
68 68 added 1 changesets with 1 changes to 1 files (+1 heads)
69 69 1 new obsolescence markers
70 70 obsoleted 1 changesets
71 71
72 72 $ cd ../..
@@ -1,94 +1,94 b''
1 1 ====================================
2 2 Testing head checking code: Case A-2
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 Category A: simple case involving a branch being superceeded by another.
11 Category A: simple case involving a branch being superseded by another.
12 12 TestCase 2: multi-changeset branch
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 1 branch with 2 changesets
17 17 ..
18 18 .. new-state:
19 19 ..
20 20 .. * another 2-changeset branch succeeding the old one
21 21 ..
22 22 .. expected-result:
23 23 ..
24 24 .. * push allowed
25 25 ..
26 26 .. graph-summary:
27 27 ..
28 28 .. B ΓΈβ‡ β—” B'
29 29 .. | |
30 30 .. A ΓΈβ‡ β—” A'
31 31 .. |/
32 32 .. ●
33 33
34 34 $ . $TESTDIR/testlib/push-checkheads-util.sh
35 35
36 36 Test setup
37 37 ----------
38 38
39 39 $ mkdir A2
40 40 $ cd A2
41 41 $ setuprepos
42 42 creating basic server and client repo
43 43 updating to branch default
44 44 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
45 45 $ cd server
46 46 $ mkcommit B0
47 47 $ cd ../client
48 48 $ hg pull
49 49 pulling from $TESTTMP/A2/server
50 50 searching for changes
51 51 adding changesets
52 52 adding manifests
53 53 adding file changes
54 54 added 1 changesets with 1 changes to 1 files
55 55 new changesets d73caddc5533 (1 drafts)
56 56 (run 'hg update' to get a working copy)
57 57 $ hg up 0
58 58 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
59 59 $ mkcommit A1
60 60 created new head
61 61 $ mkcommit B1
62 62 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
63 63 1 new obsolescence markers
64 64 obsoleted 1 changesets
65 65 1 new orphan changesets
66 66 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
67 67 1 new obsolescence markers
68 68 obsoleted 1 changesets
69 69 $ hg log -G --hidden
70 70 @ 262c8c798096 (draft): B1
71 71 |
72 72 o f6082bc4ffef (draft): A1
73 73 |
74 74 | x d73caddc5533 (draft): B0
75 75 | |
76 76 | x 8aaa48160adc (draft): A0
77 77 |/
78 78 o 1e4be0697311 (public): root
79 79
80 80
81 81 Actual testing
82 82 --------------
83 83
84 84 $ hg push
85 85 pushing to $TESTTMP/A2/server
86 86 searching for changes
87 87 adding changesets
88 88 adding manifests
89 89 adding file changes
90 90 added 2 changesets with 2 changes to 2 files (+1 heads)
91 91 2 new obsolescence markers
92 92 obsoleted 2 changesets
93 93
94 94 $ cd ../..
@@ -1,97 +1,97 b''
1 1 ====================================
2 2 Testing head checking code: Case A-3
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 Category A: simple case involving a branch being superceeded by another.
11 Category A: simple case involving a branch being superseded by another.
12 12 TestCase 3: multi-changeset branch with reordering
13 13
14 14 Push should be allowed
15 15 .. old-state:
16 16 ..
17 17 .. * 2 changeset branch
18 18 ..
19 19 .. new-state:
20 20 ..
21 21 .. * 2 changeset branch succeeding the old one with reordering
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push allowed
26 26 ..
27 27 .. graph-summary:
28 28 ..
29 29 .. B ΓΈβ‡ β‡ 
30 30 .. | ⇑
31 31 .. A ΓΈβ‡ β‡ β‡ β—‹ A'
32 32 .. | ⇑/
33 33 .. | β—‹ B'
34 34 .. |/
35 35 .. ●
36 36
37 37 $ . $TESTDIR/testlib/push-checkheads-util.sh
38 38
39 39 Test setup
40 40 ----------
41 41
42 42 $ mkdir A3
43 43 $ cd A3
44 44 $ setuprepos
45 45 creating basic server and client repo
46 46 updating to branch default
47 47 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
48 48 $ cd server
49 49 $ mkcommit B0
50 50 $ cd ../client
51 51 $ hg pull
52 52 pulling from $TESTTMP/A3/server
53 53 searching for changes
54 54 adding changesets
55 55 adding manifests
56 56 adding file changes
57 57 added 1 changesets with 1 changes to 1 files
58 58 new changesets d73caddc5533 (1 drafts)
59 59 (run 'hg update' to get a working copy)
60 60 $ hg up 0
61 61 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
62 62 $ mkcommit B1
63 63 created new head
64 64 $ mkcommit A1
65 65 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
66 66 1 new obsolescence markers
67 67 obsoleted 1 changesets
68 68 1 new orphan changesets
69 69 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
70 70 1 new obsolescence markers
71 71 obsoleted 1 changesets
72 72 $ hg log -G --hidden
73 73 @ c1c7524e9488 (draft): A1
74 74 |
75 75 o 25c56d33e4c4 (draft): B1
76 76 |
77 77 | x d73caddc5533 (draft): B0
78 78 | |
79 79 | x 8aaa48160adc (draft): A0
80 80 |/
81 81 o 1e4be0697311 (public): root
82 82
83 83
84 84 Actual testing
85 85 --------------
86 86
87 87 $ hg push
88 88 pushing to $TESTTMP/A3/server
89 89 searching for changes
90 90 adding changesets
91 91 adding manifests
92 92 adding file changes
93 93 added 2 changesets with 2 changes to 2 files (+1 heads)
94 94 2 new obsolescence markers
95 95 obsoleted 2 changesets
96 96
97 97 $ cd ../..
@@ -1,77 +1,77 b''
1 1 ====================================
2 2 Testing head checking code: Case A-4
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 Category A: simple case involving a branch being superceeded by another.
11 Category A: simple case involving a branch being superseded by another.
12 12 TestCase 4: New changeset as children of the successor
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 1-changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 20 .. * 2-changeset branch, first is a successor, but head is new
21 21 ..
22 22 .. expected-result:
23 23 ..
24 24 .. * push allowed
25 25 ..
26 26 .. graph-summary:
27 27 ..
28 28 .. β—” B
29 29 .. |
30 30 .. A ΓΈβ‡ β—” A'
31 31 .. |/
32 32 .. ●
33 33
34 34 $ . $TESTDIR/testlib/push-checkheads-util.sh
35 35
36 36 Test setup
37 37 ----------
38 38
39 39 $ mkdir A4
40 40 $ cd A4
41 41 $ setuprepos
42 42 creating basic server and client repo
43 43 updating to branch default
44 44 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
45 45 $ cd client
46 46 $ hg up 0
47 47 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
48 48 $ mkcommit A1
49 49 created new head
50 50 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
51 51 1 new obsolescence markers
52 52 obsoleted 1 changesets
53 53 $ mkcommit B0
54 54 $ hg log -G --hidden
55 55 @ f40ded968333 (draft): B0
56 56 |
57 57 o f6082bc4ffef (draft): A1
58 58 |
59 59 | x 8aaa48160adc (draft): A0
60 60 |/
61 61 o 1e4be0697311 (public): root
62 62
63 63
64 64 Actual testing
65 65 --------------
66 66
67 67 $ hg push
68 68 pushing to $TESTTMP/A4/server
69 69 searching for changes
70 70 adding changesets
71 71 adding manifests
72 72 adding file changes
73 73 added 2 changesets with 2 changes to 2 files (+1 heads)
74 74 1 new obsolescence markers
75 75 obsoleted 1 changesets
76 76
77 77 $ cd ../../
@@ -1,78 +1,78 b''
1 1 ====================================
2 2 Testing head checking code: Case A-5
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 Category A: simple case involving a branch being superceeded by another.
11 Category A: simple case involving a branch being superseded by another.
12 12 TestCase 5: New changeset as parent of the successor
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 1-changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 20 .. * 2rchangeset branch, head is a successor, but other is new
21 21 ..
22 22 .. expected-result:
23 23 ..
24 24 .. * push allowed
25 25 ..
26 26 .. graph-summary:
27 27 ..
28 28 .. A ΓΈβ‡ β—” A'
29 29 .. | |
30 30 .. | β—” B
31 31 .. |/
32 32 .. ●
33 33
34 34 $ . $TESTDIR/testlib/push-checkheads-util.sh
35 35
36 36 Test setup
37 37 ----------
38 38
39 39 $ mkdir A5
40 40 $ cd A5
41 41 $ setuprepos
42 42 creating basic server and client repo
43 43 updating to branch default
44 44 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
45 45 $ cd client
46 46 $ hg up 0
47 47 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
48 48 $ mkcommit B0
49 49 created new head
50 50 $ mkcommit A1
51 51 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
52 52 1 new obsolescence markers
53 53 obsoleted 1 changesets
54 54 $ hg log -G --hidden
55 55 @ ba93660aff8d (draft): A1
56 56 |
57 57 o 74ff5441d343 (draft): B0
58 58 |
59 59 | x 8aaa48160adc (draft): A0
60 60 |/
61 61 o 1e4be0697311 (public): root
62 62
63 63
64 64 Actual testing
65 65 --------------
66 66
67 67 $ hg push
68 68 pushing to $TESTTMP/A5/server
69 69 searching for changes
70 70 adding changesets
71 71 adding manifests
72 72 adding file changes
73 73 added 2 changesets with 2 changes to 2 files (+1 heads)
74 74 1 new obsolescence markers
75 75 obsoleted 1 changesets
76 76
77 77 $ cd ../..
78 78
@@ -1,105 +1,105 b''
1 1 ====================================
2 2 Testing head checking code: Case A-6
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 Category A: simple case involving a branch being superceeded by another.
11 Category A: simple case involving a branch being superseded by another.
12 12 TestCase 6: multi-changeset branch, split on multiple other, (base on its own branch), same number of head
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 branch (1-changeset, and 2-changesets)
17 17 ..
18 18 .. new-state:
19 19 ..
20 .. * 1 new branch superceeding the base of the old-2-changesets-branch,
21 .. * 1 new changesets on the old-1-changeset-branch superceeding the head of the other
20 .. * 1 new branch superseding the base of the old-2-changesets-branch,
21 .. * 1 new changesets on the old-1-changeset-branch superseding the head of the other
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push allowed
26 26 ..
27 27 .. graph-summary:
28 28 ..
29 29 .. B'β—”β‡’ΓΈ B
30 30 .. | |
31 31 .. A | ΓΈβ‡ β—” A'
32 32 .. | |/
33 33 .. C ● |
34 34 .. \|
35 35 .. ●
36 36
37 37 $ . $TESTDIR/testlib/push-checkheads-util.sh
38 38
39 39 Test setup
40 40 ----------
41 41
42 42 $ mkdir A6
43 43 $ cd A6
44 44 $ setuprepos
45 45 creating basic server and client repo
46 46 updating to branch default
47 47 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
48 48 $ cd server
49 49 $ mkcommit B0
50 50 $ hg up 0
51 51 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
52 52 $ mkcommit C0
53 53 created new head
54 54 $ cd ../client
55 55 $ hg pull
56 56 pulling from $TESTTMP/A6/server
57 57 searching for changes
58 58 adding changesets
59 59 adding manifests
60 60 adding file changes
61 61 added 2 changesets with 2 changes to 2 files (+1 heads)
62 62 new changesets d73caddc5533:0f88766e02d6 (2 drafts)
63 63 (run 'hg heads' to see heads, 'hg merge' to merge)
64 64 $ hg up 0
65 65 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
66 66 $ mkcommit A1
67 67 created new head
68 68 $ hg up 'desc(C0)'
69 69 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
70 70 $ mkcommit B1
71 71 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
72 72 1 new obsolescence markers
73 73 obsoleted 1 changesets
74 74 1 new orphan changesets
75 75 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
76 76 1 new obsolescence markers
77 77 obsoleted 1 changesets
78 78 $ hg log -G --hidden
79 79 @ d70a1f75a020 (draft): B1
80 80 |
81 81 | o f6082bc4ffef (draft): A1
82 82 | |
83 83 o | 0f88766e02d6 (draft): C0
84 84 |/
85 85 | x d73caddc5533 (draft): B0
86 86 | |
87 87 | x 8aaa48160adc (draft): A0
88 88 |/
89 89 o 1e4be0697311 (public): root
90 90
91 91
92 92 Actual testing
93 93 --------------
94 94
95 95 $ hg push
96 96 pushing to $TESTTMP/A6/server
97 97 searching for changes
98 98 adding changesets
99 99 adding manifests
100 100 adding file changes
101 101 added 2 changesets with 2 changes to 2 files (+1 heads)
102 102 2 new obsolescence markers
103 103 obsoleted 2 changesets
104 104
105 105 $ cd ../..
@@ -1,105 +1,105 b''
1 1 ====================================
2 2 Testing head checking code: Case A-7
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 Category A: simple case involving a branch being superceeded by another.
11 Category A: simple case involving a branch being superseded by another.
12 12 TestCase 7: multi-changeset branch, split on multiple other, (head on its own branch), same number of head
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 branch (1-changeset, and 2-changesets)
17 17 ..
18 18 .. new-state:
19 19 ..
20 .. * 1 new branch superceeding the head of the old-2-changesets-branch,
21 .. * 1 new changesets on the old-1-changeset-branch superceeding the base of the other
20 .. * 1 new branch superseding the head of the old-2-changesets-branch,
21 .. * 1 new changesets on the old-1-changeset-branch superseding the base of the other
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push allowed
26 26 ..
27 27 .. graph-summary:
28 28 ..
29 29 .. B ΓΈβ‡ β—” B'
30 30 .. | |
31 31 .. A'β—”β‡’ΓΈ |
32 32 .. | |/
33 33 .. C ● |
34 34 .. \|
35 35 .. ●
36 36
37 37 $ . $TESTDIR/testlib/push-checkheads-util.sh
38 38
39 39 Test setup
40 40 ----------
41 41
42 42 $ mkdir A7
43 43 $ cd A7
44 44 $ setuprepos
45 45 creating basic server and client repo
46 46 updating to branch default
47 47 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
48 48 $ cd server
49 49 $ mkcommit B0
50 50 $ hg up 0
51 51 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
52 52 $ mkcommit C0
53 53 created new head
54 54 $ cd ../client
55 55 $ hg pull
56 56 pulling from $TESTTMP/A7/server
57 57 searching for changes
58 58 adding changesets
59 59 adding manifests
60 60 adding file changes
61 61 added 2 changesets with 2 changes to 2 files (+1 heads)
62 62 new changesets d73caddc5533:0f88766e02d6 (2 drafts)
63 63 (run 'hg heads' to see heads, 'hg merge' to merge)
64 64 $ hg up 'desc(C0)'
65 65 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
66 66 $ mkcommit A1
67 67 $ hg up 0
68 68 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
69 69 $ mkcommit B1
70 70 created new head
71 71 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
72 72 1 new obsolescence markers
73 73 obsoleted 1 changesets
74 74 1 new orphan changesets
75 75 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
76 76 1 new obsolescence markers
77 77 obsoleted 1 changesets
78 78 $ hg log -G --hidden
79 79 @ 25c56d33e4c4 (draft): B1
80 80 |
81 81 | o a0802eb7fc1b (draft): A1
82 82 | |
83 83 | o 0f88766e02d6 (draft): C0
84 84 |/
85 85 | x d73caddc5533 (draft): B0
86 86 | |
87 87 | x 8aaa48160adc (draft): A0
88 88 |/
89 89 o 1e4be0697311 (public): root
90 90
91 91
92 92 Actual testing
93 93 --------------
94 94
95 95 $ hg push
96 96 pushing to $TESTTMP/A7/server
97 97 searching for changes
98 98 adding changesets
99 99 adding manifests
100 100 adding file changes
101 101 added 2 changesets with 2 changes to 2 files (+1 heads)
102 102 2 new obsolescence markers
103 103 obsoleted 2 changesets
104 104
105 105 $ cd ../..
@@ -1,84 +1,84 b''
1 1 ====================================
2 2 Testing head checking code: Case A-8
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 Category A: simple case involving a branch being superceeded by another.
11 Category A: simple case involving a branch being superseded by another.
12 12 TestCase 8: single-changeset branch indirect rewrite
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 1-changeset branch
17 17 ..
18 18 .. new-state:
19 19 ..
20 20 .. * 1-changeset branch succeeding to A, through another unpushed changesets
21 21 ..
22 22 .. expected-result:
23 23 ..
24 24 .. * push allowed
25 25 ..
26 26 .. graph-summary:
27 27 ..
28 28 .. A'
29 29 .. A ΓΈβ‡ ΓΈβ‡ β—” A''
30 30 .. |/ /
31 31 .. | /
32 32 .. |/
33 33 .. ●
34 34
35 35 $ . $TESTDIR/testlib/push-checkheads-util.sh
36 36
37 37 Test setup
38 38 ----------
39 39
40 40 $ mkdir A8
41 41 $ cd A8
42 42 $ setuprepos
43 43 creating basic server and client repo
44 44 updating to branch default
45 45 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
46 46 $ cd client
47 47 $ hg up 0
48 48 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
49 49 $ mkcommit A1
50 50 created new head
51 51 $ hg up 0
52 52 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
53 53 $ mkcommit A2
54 54 created new head
55 55 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
56 56 1 new obsolescence markers
57 57 obsoleted 1 changesets
58 58 $ hg debugobsolete `getid "desc(A1)" ` `getid "desc(A2)"`
59 59 1 new obsolescence markers
60 60 obsoleted 1 changesets
61 61 $ hg log -G --hidden
62 62 @ c1f8d089020f (draft): A2
63 63 |
64 64 | x f6082bc4ffef (draft): A1
65 65 |/
66 66 | x 8aaa48160adc (draft): A0
67 67 |/
68 68 o 1e4be0697311 (public): root
69 69
70 70
71 71 Actual testing
72 72 --------------
73 73
74 74 $ hg push
75 75 pushing to $TESTTMP/A8/server
76 76 searching for changes
77 77 adding changesets
78 78 adding manifests
79 79 adding file changes
80 80 added 1 changesets with 1 changes to 1 files (+1 heads)
81 81 2 new obsolescence markers
82 82 obsoleted 1 changesets
83 83
84 84 $ cd ../..
@@ -1,129 +1,129 b''
1 1 ====================================
2 2 Testing head checking code: Case D-4
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 11 Category D: remote head is "obs-affected" locally, but result is not part of the push
12 12 TestCase 4: multi-changeset branch, split on multiple other, (base on its own new branch)
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 branch (1 changeset, and 2 changesets)
17 17 ..
18 18 .. new-state:
19 19 ..
20 .. * 1 new branch superceeding the base of the old-2-changesets-branch,
21 .. * 1 new changesets on the old-1-changeset-branch superceeding the head of the other
20 .. * 1 new branch superseding the base of the old-2-changesets-branch,
21 .. * 1 new changesets on the old-1-changeset-branch superseding the head of the other
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push the new branch only -> push denied (variant a)
26 26 .. * push the existing branch only -> push allowed (variant b)
27 27 .. (pushing all is tested as case A-7)
28 28 ..
29 29 .. graph-summary:
30 30 ..
31 31 .. (variant a)
32 32 ..
33 33 .. B'β—‹β‡’ΓΈ B
34 34 .. | |
35 35 .. A | ΓΈβ‡ β—” A'
36 36 .. | |/
37 37 .. C ● |
38 38 .. \|
39 39 .. ●
40 40 ..
41 41 .. or (variant b)
42 42 ..
43 43 .. B'β—”β‡’ΓΈ B
44 44 .. | |
45 45 .. A | ΓΈβ‡ β—‹ A'
46 46 .. | |/
47 47 .. C ● |
48 48 .. \|
49 49 .. ●
50 50
51 51 $ . $TESTDIR/testlib/push-checkheads-util.sh
52 52
53 53 Test setup
54 54 ----------
55 55
56 56 $ mkdir D4
57 57 $ cd D4
58 58 $ setuprepos
59 59 creating basic server and client repo
60 60 updating to branch default
61 61 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
62 62 $ cd server
63 63 $ mkcommit B0
64 64 $ hg up 0
65 65 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
66 66 $ mkcommit C0
67 67 created new head
68 68 $ cd ../client
69 69 $ hg pull
70 70 pulling from $TESTTMP/D4/server
71 71 searching for changes
72 72 adding changesets
73 73 adding manifests
74 74 adding file changes
75 75 added 2 changesets with 2 changes to 2 files (+1 heads)
76 76 new changesets d73caddc5533:0f88766e02d6 (2 drafts)
77 77 (run 'hg heads' to see heads, 'hg merge' to merge)
78 78 $ hg up 0
79 79 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
80 80 $ mkcommit A1
81 81 created new head
82 82 $ hg up 'desc(C0)'
83 83 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
84 84 $ mkcommit B1
85 85 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
86 86 1 new obsolescence markers
87 87 obsoleted 1 changesets
88 88 1 new orphan changesets
89 89 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
90 90 1 new obsolescence markers
91 91 obsoleted 1 changesets
92 92 $ hg log -G --hidden
93 93 @ d70a1f75a020 (draft): B1
94 94 |
95 95 | o f6082bc4ffef (draft): A1
96 96 | |
97 97 o | 0f88766e02d6 (draft): C0
98 98 |/
99 99 | x d73caddc5533 (draft): B0
100 100 | |
101 101 | x 8aaa48160adc (draft): A0
102 102 |/
103 103 o 1e4be0697311 (public): root
104 104
105 105
106 106 Actual testing (new branch only)
107 107 --------------------------------
108 108
109 109 $ hg push --rev 'desc(A1)'
110 110 pushing to $TESTTMP/D4/server
111 111 searching for changes
112 112 abort: push creates new remote head f6082bc4ffef
113 113 (merge or see 'hg help push' for details about pushing new heads)
114 114 [20]
115 115
116 116 Actual testing (existing branch only)
117 117 ------------------------------------
118 118
119 119 $ hg push --rev 'desc(B1)'
120 120 pushing to $TESTTMP/D4/server
121 121 searching for changes
122 122 adding changesets
123 123 adding manifests
124 124 adding file changes
125 125 added 1 changesets with 1 changes to 1 files
126 126 1 new obsolescence markers
127 127 obsoleted 1 changesets
128 128
129 129 $ cd ../..
@@ -1,115 +1,115 b''
1 1 ====================================
2 2 Testing head checking code: Case D-5
3 3 ====================================
4 4
5 5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 6 into play to detect if existing branches on the server are being replaced by
7 7 some of the new one we push.
8 8
9 9 This case is part of a series of tests checking this behavior.
10 10
11 11 Category D: remote head is "obs-affected" locally, but result is not part of the push
12 12 TestCase 5: multi-changeset branch, split on multiple other, (head on its own new branch)
13 13
14 14 .. old-state:
15 15 ..
16 16 .. * 2 branch (1 changeset, and 2 changesets)
17 17 ..
18 18 .. new-state:
19 19 ..
20 .. * 1 new branch superceeding the head of the old-2-changesets-branch,
21 .. * 1 new changesets on the old-1-changeset-branch superceeding the base of the other
20 .. * 1 new branch superseding the head of the old-2-changesets-branch,
21 .. * 1 new changesets on the old-1-changeset-branch superseding the base of the other
22 22 ..
23 23 .. expected-result:
24 24 ..
25 25 .. * push the new branch only -> push denied
26 26 .. * push the existing branch only -> push allowed
27 27 .. /!\ This push create unstability/orphaning on the other hand and we should
28 28 .. probably detect/warn agains that.
29 29 ..
30 30 .. graph-summary:
31 31 ..
32 32 .. B ΓΈβ‡ β—” B'
33 33 .. | |
34 34 .. A'β—”β‡’ΓΈ |
35 35 .. | |/
36 36 .. C ● |
37 37 .. \|
38 38 .. ●
39 39
40 40 $ . $TESTDIR/testlib/push-checkheads-util.sh
41 41
42 42 Test setup
43 43 ----------
44 44
45 45 $ mkdir D5
46 46 $ cd D5
47 47 $ setuprepos
48 48 creating basic server and client repo
49 49 updating to branch default
50 50 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
51 51 $ cd server
52 52 $ mkcommit B0
53 53 $ hg up 0
54 54 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
55 55 $ mkcommit C0
56 56 created new head
57 57 $ cd ../client
58 58 $ hg pull
59 59 pulling from $TESTTMP/D5/server
60 60 searching for changes
61 61 adding changesets
62 62 adding manifests
63 63 adding file changes
64 64 added 2 changesets with 2 changes to 2 files (+1 heads)
65 65 new changesets d73caddc5533:0f88766e02d6 (2 drafts)
66 66 (run 'hg heads' to see heads, 'hg merge' to merge)
67 67 $ hg up 'desc(C0)'
68 68 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
69 69 $ mkcommit A1
70 70 $ hg up 0
71 71 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
72 72 $ mkcommit B1
73 73 created new head
74 74 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
75 75 1 new obsolescence markers
76 76 obsoleted 1 changesets
77 77 1 new orphan changesets
78 78 $ hg debugobsolete `getid "desc(B0)" ` `getid "desc(B1)"`
79 79 1 new obsolescence markers
80 80 obsoleted 1 changesets
81 81 $ hg log -G --hidden
82 82 @ 25c56d33e4c4 (draft): B1
83 83 |
84 84 | o a0802eb7fc1b (draft): A1
85 85 | |
86 86 | o 0f88766e02d6 (draft): C0
87 87 |/
88 88 | x d73caddc5533 (draft): B0
89 89 | |
90 90 | x 8aaa48160adc (draft): A0
91 91 |/
92 92 o 1e4be0697311 (public): root
93 93
94 94
95 95 Actual testing
96 96 --------------
97 97
98 98 $ hg push --rev 'desc(B1)'
99 99 pushing to $TESTTMP/D5/server
100 100 searching for changes
101 101 abort: push creates new remote head 25c56d33e4c4
102 102 (merge or see 'hg help push' for details about pushing new heads)
103 103 [20]
104 104 $ hg push --rev 'desc(A1)'
105 105 pushing to $TESTTMP/D5/server
106 106 searching for changes
107 107 adding changesets
108 108 adding manifests
109 109 adding file changes
110 110 added 1 changesets with 1 changes to 1 files
111 111 1 new obsolescence markers
112 112 obsoleted 1 changesets
113 113 1 new orphan changesets
114 114
115 115 $ cd ../..
General Comments 0
You need to be logged in to leave comments. Login now