Mercurial > hg-stable
annotate tests/test-merge-no-file-change.t @ 39147:f0c2653ca706
merge: add tests for commit with no content change
It isn't easy to say when to reuse the p1 manifest. Basically, that's only
when wctx.files() is empty, but we need to know that wctx.files() is not
the same as repo['.'].files() after the commit.
This patch adds several examples of commits with empty ctx/wctx.files().
I don't think this is exhaustive, but it contains at least one failure
mode in which a converted repo result in a different hash.
I also note that the manifest revlog does NOT follow the DAG shape of the
changelog since p1 manifest is reused if wctx.files() is empty even at merge.
I don't know whether it is intentional or not, but it's the behavior since
2011, 301725c3df9a "localrepo: reuse parent manifest in commitctx if no files
have changed."
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sun, 12 Aug 2018 18:44:42 +0900 |
parents | |
children | 46da52f4b820 |
rev | line source |
---|---|
39147
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
1 $ cat <<'EOF' >> "$HGRCPATH" |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
2 > [extensions] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
3 > convert = |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
4 > [templates] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
5 > l = '{rev}:{node|short} p={p1rev},{p2rev} m={manifest} f={files|json}' |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
6 > EOF |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
7 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
8 $ check_convert_identity () { |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
9 > hg convert -q "$1" "$1.converted" |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
10 > hg outgoing -q -R "$1.converted" "$1" |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
11 > if [ "$?" != 1 ]; then |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
12 > echo '*** BUG: hash changes on convert ***' |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
13 > hg log -R "$1.converted" -GTl |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
14 > fi |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
15 > } |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
16 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
17 Files added at both parents: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
18 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
19 $ hg init added-both |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
20 $ cd added-both |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
21 $ touch a b c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
22 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
23 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
24 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
25 $ hg ci -qAm2 c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
26 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
27 $ hg merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
28 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
29 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
30 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
31 committing files: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
32 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
33 committing manifest |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
34 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
35 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
36 committed changeset 3:7aa8a293f5d97377037afc21e871e036e718d659 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
37 $ hg log -GTl |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
38 @ 3:7aa8a293f5d9 p=2,1 m=3:8667461869a1 f=[] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
39 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
40 | o 2:e0ea47086fce p=0,-1 m=2:b2e5b07f9374 f=["c"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
41 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
42 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
43 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
44 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
45 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
46 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
47 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
48 $ check_convert_identity added-both |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
49 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
50 Files added at both parents, but the other removed at the merge: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
51 (In this case, ctx.files() after the commit contains the removed file "b", but |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
52 its manifest does not differ from p1.) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
53 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
54 $ hg init added-both-removed-at-merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
55 $ cd added-both-removed-at-merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
56 $ touch a b c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
57 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
58 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
59 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
60 $ hg ci -qAm2 c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
61 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
62 $ hg merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
63 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
64 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
65 $ hg rm -f b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
66 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
67 committing files: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
68 committing manifest |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
69 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
70 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
71 committed changeset 3:915745f3ca3d9d699925269474c2d0a9526e8dfa |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
72 $ hg log -GTl |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
73 @ 3:915745f3ca3d p=2,1 m=3:8e9cf3456921 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
74 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
75 | o 2:e0ea47086fce p=0,-1 m=2:b2e5b07f9374 f=["c"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
76 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
77 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
78 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
79 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
80 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
81 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
82 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
83 $ check_convert_identity added-both |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
84 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
85 An identical file added at both parents: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
86 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
87 $ hg init added-identical |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
88 $ cd added-identical |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
89 $ touch a b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
90 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
91 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
92 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
93 $ touch b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
94 $ hg ci -qAm2 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
95 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
96 $ hg merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
97 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
98 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
99 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
100 reusing manifest from p1 (no file change) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
101 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
102 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
103 committed changeset 3:de26182cd210f0c3fb175ca7616704ab963d3024 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
104 $ hg log -GTl |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
105 @ 3:de26182cd210 p=2,1 m=1:686dbf0aeca4 f=[] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
106 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
107 | o 2:f00991f11eca p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
108 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
109 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
110 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
111 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
112 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
113 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
114 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
115 $ check_convert_identity added-identical |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
116 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
117 #if execbit |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
118 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
119 An identical file added at both parents, but the flag differs. Take local: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
120 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
121 $ hg init flag-change-take-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
122 $ cd flag-change-take-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
123 $ touch a b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
124 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
125 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
126 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
127 $ touch b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
128 $ chmod +x b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
129 $ hg ci -qAm2 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
130 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
131 $ hg merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
132 warning: cannot merge flags for b without common ancestor - keeping local flags |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
133 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
134 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
135 $ chmod +x b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
136 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
137 committing files: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
138 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
139 committing manifest |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
140 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
141 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
142 committed changeset 3:4bfaad7f925b7f17f60524dc5d4e605f7bfbba3f |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
143 $ hg log -GTl |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
144 @ 3:4bfaad7f925b p=2,1 m=3:a3a9fe23a5b8 f=[] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
145 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
146 | o 2:99451f16b3f5 p=0,-1 m=2:36b69ba4b24b f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
147 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
148 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
149 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
150 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
151 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
152 $ hg files -vr3 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
153 0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
154 0 x b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
155 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
156 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
157 $ check_convert_identity flag-change-take-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
158 3:c8d50407916e |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
159 *** BUG: hash changes on convert *** |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
160 o 3:c8d50407916e p=2,1 m=2:36b69ba4b24b f=[] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
161 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
162 | o 2:99451f16b3f5 p=0,-1 m=2:36b69ba4b24b f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
163 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
164 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
165 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
166 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
167 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
168 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
169 An identical file added at both parents, but the flag differs. Take other: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
170 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
171 $ hg init flag-change-take-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
172 $ cd flag-change-take-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
173 $ touch a b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
174 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
175 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
176 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
177 $ touch b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
178 $ chmod +x b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
179 $ hg ci -qAm2 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
180 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
181 $ hg merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
182 warning: cannot merge flags for b without common ancestor - keeping local flags |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
183 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
184 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
185 $ chmod -x b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
186 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
187 committing files: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
188 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
189 committing manifest |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
190 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
191 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
192 committed changeset 3:06a62a687d87c7d8944743dee1ee9d8c66b3f6e3 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
193 $ hg log -GTl |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
194 @ 3:06a62a687d87 p=2,1 m=3:2a315ba1aa45 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
195 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
196 | o 2:99451f16b3f5 p=0,-1 m=2:36b69ba4b24b f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
197 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
198 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
199 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
200 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
201 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
202 $ hg files -vr3 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
203 0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
204 0 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
205 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
206 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
207 $ check_convert_identity flag-change-take-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
208 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
209 #endif |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
210 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
211 An identical file added at both parents, one more file added at p2: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
212 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
213 $ hg init added-some-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
214 $ cd added-some-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
215 $ touch a b c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
216 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
217 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
218 $ hg ci -qAm2 c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
219 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
220 $ touch b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
221 $ hg ci -qAm3 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
222 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
223 $ hg merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
224 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
225 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
226 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
227 committing files: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
228 c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
229 committing manifest |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
230 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
231 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
232 committed changeset 4:f7fbc4e4d9a8fde03ba475adad675578c8bf472d |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
233 $ hg log -GTl |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
234 @ 4:f7fbc4e4d9a8 p=3,2 m=3:92acd5bfd716 f=[] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
235 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
236 | o 3:e9d9f3cc981f p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
237 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
238 o | 2:93c5529a4ec7 p=1,-1 m=2:ae25a31b30b3 f=["c"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
239 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
240 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
241 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
242 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
243 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
244 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
245 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
246 $ check_convert_identity added-some-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
247 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
248 An identical file added at both parents, one more file added at p1: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
249 (In this case, p1 manifest is reused at the merge commit, which means the |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
250 manifest DAG does not have the same shape as the changelog.) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
251 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
252 $ hg init added-some-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
253 $ cd added-some-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
254 $ touch a b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
255 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
256 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
257 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
258 $ touch b c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
259 $ hg ci -qAm2 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
260 $ hg ci -qAm3 c |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
261 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
262 $ hg merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
263 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
264 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
265 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
266 reusing manifest from p1 (no file change) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
267 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
268 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
269 committed changeset 4:a9f0f589a913f5a149dc10dfbd5af726977c36c4 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
270 $ hg log -GTl |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
271 @ 4:a9f0f589a913 p=3,1 m=2:ae25a31b30b3 f=[] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
272 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
273 | o 3:b8dc385241b5 p=2,-1 m=2:ae25a31b30b3 f=["c"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
274 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
275 | o 2:f00991f11eca p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
276 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
277 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
278 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
279 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
280 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
281 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
282 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
283 $ check_convert_identity added-some-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
284 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
285 A file added at p2, a named branch created at p1: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
286 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
287 $ hg init named-branch-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
288 $ cd named-branch-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
289 $ touch a b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
290 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
291 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
292 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
293 $ hg branch -q foo |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
294 $ hg ci -m2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
295 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
296 $ hg merge default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
297 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
298 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
299 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
300 committing files: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
301 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
302 committing manifest |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
303 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
304 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
305 committed changeset 3:fb97d83b02fd072295cfc2171f21b7d38509bfd7 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
306 $ hg log -GT'{l} branch={branch}' |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
307 @ 3:fb97d83b02fd p=2,1 m=2:9091c64f4ea1 f=[] branch=foo |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
308 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
309 | o 2:a3a9fa6587e5 p=0,-1 m=0:8515d4bfda76 f=[] branch=foo |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
310 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
311 o | 1:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
312 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
313 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
314 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
315 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
316 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
317 $ check_convert_identity named-branch-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
318 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
319 A file added at p1, a named branch created at p2: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
320 (In this case, p1 manifest is reused at the merge commit, which means the |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
321 manifest DAG does not have the same shape as the changelog.) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
322 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
323 $ hg init named-branch-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
324 $ cd named-branch-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
325 $ touch a b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
326 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
327 $ hg branch -q foo |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
328 $ hg ci -m1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
329 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
330 $ hg ci -qAm1 b |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
331 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
332 $ hg merge foo |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
333 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
334 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
335 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
336 reusing manifest from p1 (no file change) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
337 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
338 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
339 committed changeset 3:036823e24692218324d4af43b07ff89f8a000096 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
340 $ hg log -GT'{l} branch={branch}' |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
341 @ 3:036823e24692 p=2,1 m=1:686dbf0aeca4 f=[] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
342 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
343 | o 2:64d01526d4c2 p=0,-1 m=1:686dbf0aeca4 f=["b"] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
344 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
345 o | 1:da38c8e00727 p=0,-1 m=0:8515d4bfda76 f=[] branch=foo |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
346 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
347 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
348 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
349 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
350 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
351 $ check_convert_identity named-branch-p2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
352 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
353 A file changed once at both parents, but amended to have identical content: |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
354 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
355 $ hg init amend-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
356 $ cd amend-p1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
357 $ touch a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
358 $ hg ci -qAm0 a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
359 $ echo foo > a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
360 $ hg ci -m1 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
361 $ hg up -q 0 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
362 $ echo bar > a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
363 $ hg ci -qm2 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
364 $ echo foo > a |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
365 $ hg ci -qm3 --amend |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
366 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
367 $ hg merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
368 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
369 (branch merge, don't forget to commit) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
370 $ hg ci --debug -m merge |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
371 reusing manifest from p1 (no file change) |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
372 committing changelog |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
373 updating the branch cache |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
374 committed changeset 3:314e5bc5adf5c58ea571efabe33eedba20a201aa |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
375 $ hg log -GT'{l} branch={branch}' |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
376 @ 3:314e5bc5adf5 p=2,1 m=1:d33ea248bd73 f=[] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
377 |\ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
378 | o 2:de9c64f226a3 p=0,-1 m=1:d33ea248bd73 f=["a"] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
379 | | |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
380 o | 1:6a74aec01b3c p=0,-1 m=1:d33ea248bd73 f=["a"] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
381 |/ |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
382 o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] branch=default |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
383 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
384 |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
385 $ cd .. |
f0c2653ca706
merge: add tests for commit with no content change
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
386 $ check_convert_identity amend-p1 |