Mercurial > evolve
annotate tests/test-namespaces.t @ 6245:a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Mon, 23 May 2022 14:02:54 +0400 |
parents | 91d9a279b84a |
children | a2491c578d2b |
rev | line source |
---|---|
6236
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
1 https://www.mercurial-scm.org/wiki/TopicPlan#sub_branches.2C_namespacing_and_representation |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
2 |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
3 $ . "$TESTDIR/testlib/topic_setup.sh" |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
4 |
6238
6bbd16579f0f
topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents:
6237
diff
changeset
|
5 $ hg init repo |
6bbd16579f0f
topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents:
6237
diff
changeset
|
6 $ cd repo |
6bbd16579f0f
topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents:
6237
diff
changeset
|
7 |
6239
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
8 $ hg debug-topic-namespace space-name |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
9 marked working directory as topic namespace: space-name |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
10 $ hg debug-topic-namespaces |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
11 space-name |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
12 |
6241
85abf58c3d8c
topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6240
diff
changeset
|
13 $ hg log -r 'wdir()' -T '{topic_namespace}\n' |
85abf58c3d8c
topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6240
diff
changeset
|
14 space-name |
85abf58c3d8c
topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6240
diff
changeset
|
15 |
6243
91d9a279b84a
topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6241
diff
changeset
|
16 $ hg log -r 'wdir()' -T '{fqbn}\n' |
91d9a279b84a
topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6241
diff
changeset
|
17 default//space-name/ |
91d9a279b84a
topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6241
diff
changeset
|
18 |
6239
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
19 $ hg branches |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
20 |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
21 $ hg debug-topic-namespace --clear |
6238
6bbd16579f0f
topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents:
6237
diff
changeset
|
22 $ hg debug-topic-namespaces |
6bbd16579f0f
topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents:
6237
diff
changeset
|
23 default |
6bbd16579f0f
topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents:
6237
diff
changeset
|
24 |
6239
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
25 $ hg debugtopicnamespace --clear nonsense |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
26 abort: cannot use --clear when setting a topic namespace |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
27 [255] |
8861e33f3bb2
topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents:
6238
diff
changeset
|
28 |
6240
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
29 $ hg branch stable |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
30 marked working directory as branch stable |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
31 (branches are permanent and global, did you want a bookmark?) |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
32 $ hg debug-topic-namespace alice |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
33 marked working directory as topic namespace: alice |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
34 $ hg topic feature |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
35 marked working directory as topic: feature |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
36 $ echo a > a |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
37 $ hg ci -qAm a |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
38 |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
39 $ hg debug-topic-namespaces |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
40 alice |
2686ecc90791
topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents:
6239
diff
changeset
|
41 |
6241
85abf58c3d8c
topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6240
diff
changeset
|
42 $ hg log -r . -T '{rev}: {branch} {topic_namespace} {topic}\n' |
85abf58c3d8c
topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6240
diff
changeset
|
43 0: stable alice feature |
85abf58c3d8c
topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6240
diff
changeset
|
44 |
6243
91d9a279b84a
topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6241
diff
changeset
|
45 $ hg log -r . -T '{rev}: {fqbn}\n' |
91d9a279b84a
topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6241
diff
changeset
|
46 0: stable//alice/feature |
91d9a279b84a
topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents:
6241
diff
changeset
|
47 |
6245
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
48 Updating to a revision with a namespace should activate it |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
49 |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
50 $ hg up null |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
51 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
52 $ hg debug-topic-namespace |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
53 default |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
54 $ hg topics |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
55 feature (1 changesets) |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
56 $ hg up 0 |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
57 switching to topic-namespace alice |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
58 switching to topic feature |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
59 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
60 $ hg debug-topic-namespace |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
61 alice |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
62 $ hg topics |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
63 * feature (1 changesets) |
a54db3e55c88
topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents:
6243
diff
changeset
|
64 |
6236
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
65 Parsing |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
66 |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
67 $ hg debugparsefqbn foo/bar//user26/feature -T '[{branch}] <{topic_namespace}> ({topic})\n' |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
68 [foo/bar] <user26> (feature) |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
69 |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
70 no double slashes means it's a named branch |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
71 $ hg debug-parse-fqbn foo/bar |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
72 branch: foo/bar |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
73 namespace: default |
7ad8107d953a
topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
74 topic: |
6237
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
75 |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
76 Formatting |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
77 |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
78 $ hg debugformatfqbn -b branch -n namespace -t topic |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
79 branch//namespace/topic |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
80 |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
81 $ hg debug-format-fqbn -n namespace |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
82 //namespace/ |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
83 |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
84 $ hg debug-format-fqbn -b foo/bar -n user26 -t feature |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
85 foo/bar//user26/feature |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
86 |
0b9042408809
topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents:
6236
diff
changeset
|
87 $ cd .. |