annotate tests/test-merge-subrepos.t @ 51181:dcaa2df1f688

changelog: never inline changelog The test suite mostly use small repositories, that implies that most changelog in the tests are inlined. As a result, non-inlined changelog are quite poorly tested. Since non-inline changelog are most common case for serious repositories, this lack of testing is a significant problem that results in high profile issue like the one recently fixed by 66417f55ea33 and 849745d7da89. Inlining the changelog does not bring much to the table, the number of total file saved is negligible, and the changelog will be read by most operation anyway. So this changeset is make it so we never inline the changelog, and de-inline the one that are still inlined whenever we touch them. By doing that, we remove the "dual code path" situation for writing new entry to the changelog and move to a "single code path" situation. Having a single code path simplify the code and make sure it is covered by test (if test cover that situation obviously) This impact all tests that care about the number of file and the exchange size, but there is nothing too complicated in them just a lot of churn. The churn is made "worse" by the fact rust will use the persistent nodemap on any changelog now. Which is overall a win as it means testing the persistent nodemap more and having less special cases. In short, having inline changelog is mostly useless and an endless source of pain. We get rid of it.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Mon, 11 Dec 2023 22:27:59 +0100
parents 55c6ebd11cb9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
49621
55c6ebd11cb9 tests: run many tests in $TESTTMP/repo instead of $TESTTMP
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 47024
diff changeset
1 $ hg init repo
55c6ebd11cb9 tests: run many tests in $TESTTMP/repo instead of $TESTTMP
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 47024
diff changeset
2 $ cd repo
13437
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
3
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
4 $ echo a > a
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
5 $ hg ci -qAm 'add a'
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
6
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
7 $ hg init subrepo
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
8 $ echo 'subrepo = http://example.net/libfoo' > .hgsub
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
9 $ hg ci -qAm 'added subrepo'
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
10
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
11 $ hg up -qC 0
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
12 $ echo ax > a
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
13 $ hg ci -m 'changed a'
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
14 created new head
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
15
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
16 $ hg up -qC 1
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
17 $ cd subrepo
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
18 $ echo b > b
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
19 $ hg add b
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
20 $ cd ..
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
21
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
22 Should fail, since there are added files to subrepo:
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
23
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
24 $ hg merge
33365
6d88468d435b subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents: 33364
diff changeset
25 abort: uncommitted changes in subrepository "subrepo"
13437
6169493ac3f9 Do not allow merging with uncommitted changes in a subrepo
Oleg Stepanov <oleg.stepanov@jetbrains.com>
parents:
diff changeset
26 [255]
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
27
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
28 Deleted files trigger a '+' marker in top level repos. Deleted files are also
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
29 noticed by `update --check` in the top level repo.
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
30
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
31 $ hg ci -Sqm 'add b'
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
32 $ echo change > subrepo/b
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
33
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
34 $ hg ci -Sm 'change b'
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
35 committing subrepository subrepo
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
36
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
37 $ rm a
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
38 $ hg id
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
39 9bfe45a197d7+ tip
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
40 $ hg sum
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
41 parent: 4:9bfe45a197d7 tip
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
42 change b
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
43 branch: default
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
44 commit: 1 deleted (clean)
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
45 update: 1 new changesets, 2 branch heads (merge)
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
46 phases: 5 draft
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
47
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
48 $ hg up --check -r '.^'
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
49 abort: uncommitted changes
45840
527ce85c2e60 errors: introduce StateError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 42565
diff changeset
50 [20]
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
51 $ hg st -S
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
52 ! a
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
53 $ hg up -Cq .
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
54
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
55 Test that dirty is consistent through subrepos
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
56
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
57 $ rm subrepo/b
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
58
33364
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
59 A deleted subrepo file is flagged as dirty, like the top level repo
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
60
40992
1de3364320af tests: filter out uninteresting log events
Yuya Nishihara <yuya@tcha.org>
parents: 39285
diff changeset
61 $ hg id --config extensions.blackbox= --config blackbox.dirty=True \
1de3364320af tests: filter out uninteresting log events
Yuya Nishihara <yuya@tcha.org>
parents: 39285
diff changeset
62 > --config blackbox.track='command commandfinish'
33364
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
63 9bfe45a197d7+ tip
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
64 $ cat .hg/blackbox.log
47024
8fcc0a829f3d chg: pass --no-profile to disable profiling when starting hg serve
Kyle Lippincott <spectral@google.com>
parents: 46738
diff changeset
65 * @9bfe45a197d7b0ab09bf287729dd57e9619c9da5+ (*)> serve --no-profile --cmdserver chgunix * (glob) (chg !)
35034
02845f7441af dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents: 34450
diff changeset
66 * @9bfe45a197d7b0ab09bf287729dd57e9619c9da5+ (*)> id --config *extensions.blackbox=* --config *blackbox.dirty=True* (glob)
33364
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
67 * @9bfe45a197d7b0ab09bf287729dd57e9619c9da5+ (*)> id --config *extensions.blackbox=* --config *blackbox.dirty=True* exited 0 * (glob)
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
68
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
69 TODO: a deleted file should be listed as such, like the top level repo
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
70
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
71 $ hg sum
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
72 parent: 4:9bfe45a197d7 tip
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
73 change b
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
74 branch: default
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
75 commit: (clean)
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
76 update: 1 new changesets, 2 branch heads (merge)
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
77 phases: 5 draft
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
78
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
79 Modified subrepo files are noticed by `update --check` and `summary`
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
80
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
81 $ echo mod > subrepo/b
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
82 $ hg st -S
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
83 M subrepo/b
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
84
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
85 $ hg up -r '.^' --check
33365
6d88468d435b subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents: 33364
diff changeset
86 abort: uncommitted changes in subrepository "subrepo"
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
87 [255]
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
88
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
89 $ hg sum
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
90 parent: 4:9bfe45a197d7 tip
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
91 change b
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
92 branch: default
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
93 commit: 1 subrepos
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
94 update: 1 new changesets, 2 branch heads (merge)
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
95 phases: 5 draft
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
96
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
97 TODO: why is -R needed here? If it's because the subrepo is treated as a
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
98 discrete unit, then this should probably warn or something.
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
99 $ hg revert -R subrepo --no-backup subrepo/b -r .
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
100
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
101 $ rm subrepo/b
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
102 $ hg st -S
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
103 ! subrepo/b
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
104
33364
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
105 `hg update --check` notices a subrepo with a missing file, like it notices a
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
106 missing file in the top level repo.
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
107
33364
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
108 $ hg up -r '.^' --check
33365
6d88468d435b subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents: 33364
diff changeset
109 abort: uncommitted changes in subrepository "subrepo"
33364
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
110 [255]
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
111
bf2daeddd42b subrepo: consider the parent repo dirty when a file is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33359
diff changeset
112 $ hg up -r '.^' --config ui.interactive=True << EOF
33366
062c1bde1781 test-subrepo: demonstrate a status problem when merge deletes a file
Matt Harbison <matt_harbison@yahoo.com>
parents: 33365
diff changeset
113 > d
33359
583aa1e3658b tests: tweak the subrepo dirty state tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 33196
diff changeset
114 > EOF
39285
a3fd84f4fb38 filemerge: fix the wrong placements of messages in prompt
Pulkit Goyal <pulkit@yandex-team.ru>
parents: 39284
diff changeset
115 file 'b' was deleted in local [working copy] but was modified in other [destination].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 40992
diff changeset
116 You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 40992
diff changeset
117 What do you want to do? d
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
118 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
119
33366
062c1bde1781 test-subrepo: demonstrate a status problem when merge deletes a file
Matt Harbison <matt_harbison@yahoo.com>
parents: 33365
diff changeset
120 XXX: There's a difference between wdir() and '.', so there should be a status.
46738
b4ad45f2f648 tests: clarify some missing output in test-merge-subrepos
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45840
diff changeset
121 `hg files -S` from the top is also missing 'subrepo/b'. The files should be
b4ad45f2f648 tests: clarify some missing output in test-merge-subrepos
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45840
diff changeset
122 seen as deleted (and, maybe even missing? in which case `hg files` should list
b4ad45f2f648 tests: clarify some missing output in test-merge-subrepos
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45840
diff changeset
123 it)
33366
062c1bde1781 test-subrepo: demonstrate a status problem when merge deletes a file
Matt Harbison <matt_harbison@yahoo.com>
parents: 33365
diff changeset
124
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
125 $ hg st -S
46738
b4ad45f2f648 tests: clarify some missing output in test-merge-subrepos
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45840
diff changeset
126 R subrepo/b (missing-correct-output !)
33366
062c1bde1781 test-subrepo: demonstrate a status problem when merge deletes a file
Matt Harbison <matt_harbison@yahoo.com>
parents: 33365
diff changeset
127 $ hg st -R subrepo
46738
b4ad45f2f648 tests: clarify some missing output in test-merge-subrepos
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45840
diff changeset
128 R subrepo/b (missing-correct-output !)
b4ad45f2f648 tests: clarify some missing output in test-merge-subrepos
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45840
diff changeset
129
b4ad45f2f648 tests: clarify some missing output in test-merge-subrepos
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45840
diff changeset
130 (note: return [1] because no files "match" since the list is empty)
b4ad45f2f648 tests: clarify some missing output in test-merge-subrepos
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45840
diff changeset
131
33366
062c1bde1781 test-subrepo: demonstrate a status problem when merge deletes a file
Matt Harbison <matt_harbison@yahoo.com>
parents: 33365
diff changeset
132 $ hg files -R subrepo
062c1bde1781 test-subrepo: demonstrate a status problem when merge deletes a file
Matt Harbison <matt_harbison@yahoo.com>
parents: 33365
diff changeset
133 [1]
062c1bde1781 test-subrepo: demonstrate a status problem when merge deletes a file
Matt Harbison <matt_harbison@yahoo.com>
parents: 33365
diff changeset
134 $ hg files -R subrepo -r '.'
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35034
diff changeset
135 subrepo/b
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
136
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
137 $ hg bookmark -r tip @other
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
138 $ echo xyz > subrepo/c
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
139 $ hg ci -SAm 'add c'
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
140 adding subrepo/c
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
141 committing subrepository subrepo
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
142 created new head
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
143 $ rm subrepo/c
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
144
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
145 Merge sees deleted subrepo files as an uncommitted change
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
146
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
147 $ hg merge @other
33365
6d88468d435b subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents: 33364
diff changeset
148 abort: uncommitted changes in subrepository "subrepo"
33196
439b4d005b4a tests: demonstrate inconsistencies with dirty state in various commands
Matt Harbison <matt_harbison@yahoo.com>
parents: 19803
diff changeset
149 [255]