Mercurial > evolve
comparison README.rst @ 5415:3be5dba88c49
readme: various small fixes to formatting and spelling
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Fri, 17 Jul 2020 09:36:14 +0800 |
parents | 15b7c822cc46 |
children | e2fb20dd0df7 |
comparison
equal
deleted
inserted
replaced
5414:15b7c822cc46 | 5415:3be5dba88c49 |
---|---|
1 ============================= | 1 ============================= |
2 Mutable History For Mercurial | 2 Mutable History For Mercurial |
3 ============================= | 3 ============================= |
4 | 4 |
5 Evolve Extension | 5 Evolve Extension |
6 ================= | 6 ================ |
7 | 7 |
8 This package supplies the ``evolve`` extension for Mercurial, | 8 This package supplies the evolve extension for Mercurial, |
9 | 9 |
10 **The full implementation of the changeset evolution concept is still in | 10 **The full implementation of the changeset evolution concept is still in |
11 progress.** Please subscribe to the `evolve-testers mailing list | 11 progress.** Please subscribe to the `evolve-testers mailing list |
12 <https://www.mercurial-scm.org/mailman/listinfo/evolve-testers>`_ to stay up to | 12 <https://www.mercurial-scm.org/mailman/listinfo/evolve-testers>`_ to stay up to |
13 date with changes. | 13 date with changes. |
27 push and pull. | 27 push and pull. |
28 | 28 |
29 Documentation | 29 Documentation |
30 ------------- | 30 ------------- |
31 | 31 |
32 We recommend reading the documentation first. An online version is | 32 We recommend reading the documentation first. An online version is available |
33 available here: | 33 here: |
34 | 34 |
35 https://www.mercurial-scm.org/doc/evolution/ | 35 https://www.mercurial-scm.org/doc/evolution/ |
36 | 36 |
37 How to Install | 37 How to Install |
38 ============== | 38 ============== |
39 | 39 |
40 Using Pip | 40 Using Pip |
41 --------- | 41 --------- |
42 | 42 |
43 You can install the latest evolution version usin pip:: | 43 You can install the latest released version using pip:: |
44 | 44 |
45 $ pip install --user hg-evolve | 45 $ pip install --user hg-evolve |
46 | 46 |
47 Then just enable it in you hgrc:: | 47 Then enable it in your hgrc:: |
48 | 48 |
49 $ hg config --edit # adds the two line below: | 49 $ hg config --edit # add these two lines: |
50 [extensions] | 50 [extensions] |
51 evolve = | 51 evolve = |
52 | 52 |
53 From Source | 53 From Source |
54 ----------- | 54 ----------- |
55 | 55 |
56 To install a local version from source:: | 56 To install a local version from source:: |
57 | 57 |
58 $ hg clone https://www.mercurial-scm.org/repo/evolve/ | 58 $ hg clone https://www.mercurial-scm.org/repo/evolve/ |
59 $ cd evolve | 59 $ cd evolve |
60 # optionally `hg update <target revision>` | |
60 $ pip install --user . | 61 $ pip install --user . |
61 | 62 |
62 Then just enable it in you hgrc:: | 63 Then enable it in your hgrc:: |
63 | 64 |
64 $ hg config --edit # adds the two line below: | 65 $ hg config --edit # add these two lines: |
65 [extensions] | 66 [extensions] |
66 evolve = | 67 evolve = |
67 | 68 |
68 Documentation lives in ``doc/``. | 69 Documentation lives in ``doc/``. |
69 | 70 |
70 Server Only Setup | 71 Server-only Setup |
71 ================= | 72 ================= |
72 | 73 |
73 It is possible to enable a smaller subset of the extensions aimed at server | 74 It is possible to enable a smaller subset of the extensions aimed at server |
74 serving repository. It skips the additions of the new commands and local UI | 75 serving repository. It skips the additions of the new commands and local UI |
75 messages that might add performance overheads. To use the server only | 76 messages that might add performance overheads. To use the server only |
76 extension, install the package and use:: | 77 extension, install the package and use:: |
77 | 78 |
78 $ hg config --edit # adds the two line below: | 79 $ hg config --edit # add these two lines: |
79 [extensions] | 80 [extensions] |
80 evolve.serveronly = | 81 evolve.serveronly = |
81 | 82 |
82 Extension Purpose | 83 Extension Purpose |
83 ================= | 84 ================= |
94 Once a concept is ready enough, its implementation is moved into Mercurial | 95 Once a concept is ready enough, its implementation is moved into Mercurial |
95 core. The maturation period helped us to get a clearer picture of what was | 96 core. The maturation period helped us to get a clearer picture of what was |
96 needed. During the upstreaming process, we can use this clearer picture to | 97 needed. During the upstreaming process, we can use this clearer picture to |
97 clean up the code and upgrade it to an appropriate quality for Mercurial core. | 98 clean up the code and upgrade it to an appropriate quality for Mercurial core. |
98 | 99 |
99 Python 3 support | 100 Python 3 Support |
100 ================ | 101 ================ |
101 | 102 |
102 Mercurial announced beta support for Python 3 starting with its 5.0 release. | 103 Mercurial announced beta support for Python 3 starting with its 5.0 release. |
103 Since 9.1.0, ``evolve`` has beta support for Python 3.6+. | 104 Since 9.1.0, ``evolve`` has beta support for Python 3.6+. |
104 | 105 |
110 | 111 |
111 Discussion happens on the #hg-evolve IRC on freenode_. | 112 Discussion happens on the #hg-evolve IRC on freenode_. |
112 | 113 |
113 .. _freenode: https://freenode.net/ | 114 .. _freenode: https://freenode.net/ |
114 | 115 |
115 Bugs are to be reported on the mercurial's bug tracker (component: `evolution`_): | 116 Bugs are to be reported on the Mercurial's bug tracker (component: |
117 `evolution`_). | |
116 | 118 |
117 .. _evolution: https://bz.mercurial-scm.org/buglist.cgi?component=evolution&query_format=advanced&resolution=--- | 119 .. _evolution: https://bz.mercurial-scm.org/buglist.cgi?component=evolution&query_format=advanced&resolution=--- |
118 | 120 |
119 The recommended way is to create Merge Request on | 121 The recommended way is to create Merge Request on |
120 https://foss.heptapod.net/mercurial/evolve. To do so, create an account and | 122 https://foss.heptapod.net/mercurial/evolve. To do so, create an account and |
125 Please make sure to use the evolve-ext flag when doing so. You can use a | 127 Please make sure to use the evolve-ext flag when doing so. You can use a |
126 command like this:: | 128 command like this:: |
127 | 129 |
128 $ hg email --to mercurial-devel@mercurial-scm.org --flag evolve-ext --rev '<your patches>' | 130 $ hg email --to mercurial-devel@mercurial-scm.org --flag evolve-ext --rev '<your patches>' |
129 | 131 |
130 | |
131 For guidelines on the patch description, see the `official Mercurial guideline`_. | 132 For guidelines on the patch description, see the `official Mercurial guideline`_. |
132 | 133 |
133 .. _`official Mercurial guideline`: https://mercurial-scm.org/wiki/ContributingChanges#Patch_descriptions | 134 .. _`official Mercurial guideline`: https://mercurial-scm.org/wiki/ContributingChanges#Patch_descriptions |
134 | 135 |
135 Please don't forget to update and run the tests when you fix a bug or | 136 Please don't forget to update and run the tests when you fix a bug or add a |
136 add a feature. To run the tests, you need a working copy of Mercurial, | 137 feature. To run the tests, you need a working copy of Mercurial, say in |
137 say in $HGSRC:: | 138 $HGSRC:: |
138 | 139 |
139 $ cd tests | 140 $ cd tests |
140 $ python $HGSRC/tests/run-tests.py | 141 $ python $HGSRC/tests/run-tests.py |
141 | 142 |
142 When certain blocks of code need to cope with API changes in core Mercurial, | 143 When certain blocks of code need to cope with API changes in core Mercurial, |
162 In addition, we have compatibility branches to check tests on older versions of | 163 In addition, we have compatibility branches to check tests on older versions of |
163 Mercurial. They are the "mercurial-x.y" branches. They are used to apply | 164 Mercurial. They are the "mercurial-x.y" branches. They are used to apply |
164 expected test changes only, no code changes should happen there. | 165 expected test changes only, no code changes should happen there. |
165 | 166 |
166 Test output changes from a changeset in core should add the following line to | 167 Test output changes from a changeset in core should add the following line to |
167 their patch description: | 168 their patch description:: |
168 | 169 |
169 CORE-TEST-OUTPUT-UPDATE: <CORE-NODE-ID> | 170 CORE-TEST-OUTPUT-UPDATE: <changeset hash> |
170 | |
171 | 171 |
172 Format-source config | 172 Format-source config |
173 ==================== | 173 ==================== |
174 | 174 |
175 Format source helps smooth out the pain of merging after auto-formatting. | 175 Format source helps smooth out the pain of merging after auto-formatting. |
177 | 177 |
178 .. _`format-source`: https://foss.heptapod.net/mercurial/format-source | 178 .. _`format-source`: https://foss.heptapod.net/mercurial/format-source |
179 | 179 |
180 Then update both your global and repo config files:: | 180 Then update both your global and repo config files:: |
181 | 181 |
182 $ hg config -l # add the lines below | 182 $ hg config --local --edit # add these lines: |
183 [extensions] | 183 [extensions] |
184 formatsource = | 184 formatsource = |
185 | 185 |
186 [format-source] | 186 [format-source] |
187 byteify-strings = python3 ~/workspace/octobus/mercurial-devel/contrib/byteify-strings.py --dictiter --treat-as-kwargs kwargs opts commitopts TROUBLES --allow-attr-methods | 187 byteify-strings = python3 ~/workspace/octobus/mercurial-devel/contrib/byteify-strings.py --dictiter --treat-as-kwargs kwargs opts commitopts TROUBLES --allow-attr-methods |