annotate README @ 3626:760210aa0d78

tests: add tests of content+parent change creating phase-divergence This patch adds tests which shows handling of phase divergence cases by `hg evolve` command which involved content+parent change. The conflicts case is not handled and will be fixed in upcoming patches.
author Pulkit Goyal <7895pulkit@gmail.com>
date Fri, 23 Mar 2018 18:58:19 +0530
parents 472a67075756
children 6352dc395ebf
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
560
4580ff7157ae fix readme header
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 556
diff changeset
1 =============================
33
dca86448d736 Add some doc.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
2 Mutable History For Mercurial
dca86448d736 Add some doc.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
3 =============================
dca86448d736 Add some doc.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
4
2095
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
5 Evolve Extension
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
6 =================
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
7
2094
e906723ab99f README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2075
diff changeset
8 This package supplies the ``evolve`` extension for Mercurial,
e906723ab99f README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2075
diff changeset
9
e906723ab99f README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2075
diff changeset
10 **The full implementation of the changeset evolution concept is still in
2099
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
11 progress.** Please subscribe to the `evolve-testers mailing list
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
12 <https://www.mercurial-scm.org/mailman/listinfo/evolve-testers>`_ to stay up to
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
13 date with changes.
2094
e906723ab99f README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2075
diff changeset
14
2102
e243e1d9464c README: timeless typo fixes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2099
diff changeset
15 This extension:
33
dca86448d736 Add some doc.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
16
2102
e243e1d9464c README: timeless typo fixes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2099
diff changeset
17 * enables the “changeset evolution” feature of Mercurial core,
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
18
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
19 * provides a set of commands to mutate your history,
2094
e906723ab99f README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2075
diff changeset
20
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
21 * issues several warning messages when troubles from some mutable appears in
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
22 your repository,
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
23
2102
e243e1d9464c README: timeless typo fixes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2099
diff changeset
24 * provides an ``hg evolve`` command to deal with such "troubles",
2099
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
25
2102
e243e1d9464c README: timeless typo fixes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2099
diff changeset
26 * improves performance of obsolescence marker exchanges and discovery during
2099
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
27 push and pull.
293
232990fbecb5 [doc] update readme
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 267
diff changeset
28
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
29 Documentation
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
30 -------------
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
31
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
32 We recommend reading the documentation first. An online version is
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
33 available here:
33
dca86448d736 Add some doc.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
34
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
35 https://www.mercurial-scm.org/doc/evolution/
33
dca86448d736 Add some doc.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
36
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
37 How to Install
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
38 ==============
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
39
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
40 Using Pip
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
41 ---------
2095
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
42
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
43 You can install the latest evolution version usin pip::
324
ff070b9e22ef readme: explain "instalation process"
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 293
diff changeset
44
2095
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
45 $ pip install --user hg-evolve
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
46
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
47 Then just enable it in you hgrc::
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
48
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
49 $ hg config --edit # adds the two line below:
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
50 [extensions]
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
51 evolve =
33
dca86448d736 Add some doc.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
52
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
53 From Source
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
54 -----------
739
dcda64966616 README: polish the language so it reads better
Greg Ward <greg@gerg.ca>
parents: 738
diff changeset
55
2095
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
56 To install a local version from source::
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
57
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
58 $ hg clone https://www.mercurial-scm.org/repo/evolve/
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
59 $ cd evolve
2113
fed5369058a4 README: remove mention of make
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2102
diff changeset
60 $ pip install --user .
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1824
diff changeset
61
2095
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
62 Then just enable it in you hgrc::
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
63
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
64 $ hg config --edit # adds the two line below:
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
65 [extensions]
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
66 evolve =
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
67
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
68 Documentation lives in ``doc/``.
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
69
2114
51ee2c721b32 README: tries to improve the title about server only
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2113
diff changeset
70 Server Only Setup
51ee2c721b32 README: tries to improve the title about server only
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2113
diff changeset
71 =================
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1824
diff changeset
72
2099
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
73 It is possible to enable a smaller subset of the extensions aimed at server
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
74 serving repository. It skips the additions of the new commands and local UI
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
75 messages that might add performance overheads. To use the server only
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
76 extension, install the package and use::
2095
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
77
1c6bb9c117fc README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2094
diff changeset
78 $ hg config --edit # adds the two line below:
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1824
diff changeset
79 [extensions]
2099
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
80 evolve.serveronly =
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1824
diff changeset
81
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1824
diff changeset
82
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
83 How to Contribute
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
84 =================
238
b5d9841defc8 more read me update
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 237
diff changeset
85
2099
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
86 Bugs are to be reported on the mercurial's bug tracker (component: `evolution`_):
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
87
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
88 .. _evolution: https://bz.mercurial-scm.org/buglist.cgi?component=evolution&query_format=advanced&resolution=---
1182
15492cea54e9 readme: add a reference to the bugtracker in the contribute section
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1175
diff changeset
89
2115
53fe0a1c9d4c README: add a link to mercurial devel
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2114
diff changeset
90 Please use the patchbomb extension to send email to `mercurial devel
53fe0a1c9d4c README: add a link to mercurial devel
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2114
diff changeset
91 <https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel>`_. Please make
53fe0a1c9d4c README: add a link to mercurial devel
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2114
diff changeset
92 sure to use the evolve-ext flag when doing so. You can use a command like
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
93 this::
1000
8043ae3612e4 readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents: 987
diff changeset
94
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
95 $ hg email --to mercurial-devel@mercurial-scm.org --flag evolve-ext --rev '<your patches>'
1000
8043ae3612e4 readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents: 987
diff changeset
96
2099
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
97 For guidelines on the patch description, see the `official Mercurial guideline`_.
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
98
47017b3086d4 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2097
diff changeset
99 .. _`official Mercurial guideline`: https://mercurial-scm.org/wiki/ContributingChanges#Patch_descriptions
1000
8043ae3612e4 readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents: 987
diff changeset
100
8043ae3612e4 readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents: 987
diff changeset
101 Please don't forget to update and run the tests when you fix a bug or
1526
c2a772ade409 README: update instructions for running tests.
Greg Ward <greg@gerg.ca>
parents: 1519
diff changeset
102 add a feature. To run the tests, you need a working copy of Mercurial,
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
103 say in $HGSRC::
926
14d91c36f88b README: document how to run the tests
Greg Ward <greg@gerg.ca>
parents: 924
diff changeset
104
2097
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
105 $ cd tests
c99e926d465a README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2095
diff changeset
106 $ python $HGSRC/tests/run-tests.py
1526
c2a772ade409 README: update instructions for running tests.
Greg Ward <greg@gerg.ca>
parents: 1519
diff changeset
107
2537
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
108 Branch policy
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
109 -------------
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
110
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
111 The evolve test are highly impacted by changes in core. To deal with this, we use named branches.
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
112
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
113 There are two main branches: "stable" and "default". Tests on these branch are
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
114 supposed to pass with the corresponding "default" and "stable" branch from core
2538
2b2addb23e96 packaging: mark as version 6.3.1.dev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2537
diff changeset
115 Mercurial. The documentation is built from the tip of stable.
2537
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
116
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
117 In addition, we have compatibility branches to check tests on older version of
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
118 Mercurial. They are the "mercurial-x.y" branches. They are used to apply
4a467331ec79 readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2535
diff changeset
119 expected test change only, no code change should happen there.