Mercurial > hg
annotate tests/test-branch-tag-confict.t @ 31976:e0b6421b2fc5
obsolescence: add test for the "branch replacement" logic during push, case A3
Mercurial checks for the introduction of new heads on push. Evolution comes
into play to detect if existing branches on the server are being replaced by
some of the new one we push.
The current code for this logic is very basic (eg: issue4354) and was poorly
tested. We have a better implementation coming in the evolve extension fixing
these issues and with more serious tests coverage. In the process of upstreaming
this improved logic, we start with adding the test case that are already passing
with the current implementation. Once they are all in, we'll upstream the better
implementation and the extra test case.
See inline documentation for details about the test case added in this
changeset.
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Thu, 13 Apr 2017 16:23:18 +0200 |
parents | f2719b387380 |
children |
rev | line source |
---|---|
13750
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
1 Initial setup. |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
2 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
3 $ hg init repo |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
4 $ cd repo |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
5 $ touch thefile |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
6 $ hg ci -A -m 'Initial commit.' |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
7 adding thefile |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
8 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
9 Create a tag. |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
10 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
11 $ hg tag branchortag |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
12 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
13 Create a branch with the same name as the tag. |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
14 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
15 $ hg branch branchortag |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
16 marked working directory as branch branchortag |
15615 | 17 (branches are permanent and global, did you want a bookmark?) |
13750
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
18 $ hg ci -m 'Create a branch with the same name as a tag.' |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
19 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
20 This is what we have: |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
21 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
22 $ hg log |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
13750
diff
changeset
|
23 changeset: 2:10519b3f489a |
13750
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
24 branch: branchortag |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
25 tag: tip |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
26 user: test |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
27 date: Thu Jan 01 00:00:00 1970 +0000 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
28 summary: Create a branch with the same name as a tag. |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
29 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
30 changeset: 1:2635c45ca99b |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
31 user: test |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
32 date: Thu Jan 01 00:00:00 1970 +0000 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
33 summary: Added tag branchortag for changeset f57387372b5d |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
34 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
35 changeset: 0:f57387372b5d |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
36 tag: branchortag |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
37 user: test |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
38 date: Thu Jan 01 00:00:00 1970 +0000 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
39 summary: Initial commit. |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
40 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
41 Update to the tag: |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
42 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
43 $ hg up 'tag(branchortag)' |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
44 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
45 $ hg parents |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
46 changeset: 0:f57387372b5d |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
47 tag: branchortag |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
48 user: test |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
49 date: Thu Jan 01 00:00:00 1970 +0000 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
50 summary: Initial commit. |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
51 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
52 Updating to the branch: |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
53 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
54 $ hg up 'branch(branchortag)' |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
55 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
56 $ hg parents |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
13750
diff
changeset
|
57 changeset: 2:10519b3f489a |
13750
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
58 branch: branchortag |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
59 tag: tip |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
60 user: test |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
61 date: Thu Jan 01 00:00:00 1970 +0000 |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
62 summary: Create a branch with the same name as a tag. |
7eb82f88e157
# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
63 |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15615
diff
changeset
|
64 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15615
diff
changeset
|
65 $ cd .. |