annotate docs/obs-terms.rst @ 1404:848a04c078c7

evolve: add selector for trouble types This patch adds command line flags to select the kind of troubles to solve. Before this patch evolve was solving any kind of troubled. With this patch evolve --all and evolve --rev can be configured to only solve only some type of troubles (divergent, bumped or unstable). To give this choice to the user we add three new command line flags to the evolve command: --bumped, --divergent and --unstable.
author Laurent Charignon <lcharignon@fb.com>
date Tue, 16 Jun 2015 15:14:37 -0700
parents 6f2c1574eda8
children 49d4f4bfd2ab
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
519
9825c7da5b54 ensure all file have a copyright notice
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 505
diff changeset
1 .. Copyright 2011 Pierre-Yves David <pierre-yves.david@ens-lyon.org>
9825c7da5b54 ensure all file have a copyright notice
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 505
diff changeset
2 .. Logilab SA <contact@logilab.fr>
527
b81193ef3488 docs: add missing blank line after Copyright notice
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 519
diff changeset
3
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
4 -----------------------------------
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
5 Terminology of the obsolete concept
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
6 -----------------------------------
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
7
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
8 Obsolete markers
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
9 ----------------
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
10
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
11 The mutable concept is based on **obsolete markers**. Creating an obsolete
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
12 marker registers a relation between an old obsoleted changeset and its newer
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
13 version.
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
14
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
15 Old changesets are called **precursors** while their new versions are called
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
16 **successors**. A marker always registers a single *precursor* and:
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
17
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
18 - no *successor*: the *precursor* is just discarded.
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
19 - one *successor*: the *precursor* has been rewritten
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
20 - multiple *successors*: the *precursor* were splits in multiple
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
21 changesets.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
22
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
23 .. The *precursors* and *successors* terms can be used on changeset directy:
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
24
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
25 .. :precursors: of a changeset `A` are changesets used as *precursors* by
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
26 .. obsolete marker using changeset `A` as *successors*
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
27
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
28 .. :successors: of a changeset `B` are changesets used as *successors* by
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
29 .. obsolete marker using changeset `B` as *precursors*
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
30
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
31 Chaining obsolete markers is allowed to rewrite a changeset that is already a
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
32 *successor*. This is a kind of *second order version control*.
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
33 To clarify ambiguous situations one can use **direct precursors** or
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
34 **direct successors** to name changesets that are directly related.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
35
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
36 The set of all *obsolete markers* forms a direct acyclic graph the same way
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
37 standard *parents*/*children* relation does. In this graph we have:
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
38
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
39 :any precursors: are transitive precursors of a changeset: *direct precursors*
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
40 and *precursors* of *precursors*.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
41
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
42 :any successors: are transitive successors of a changeset: *direct successors*
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
43 and *successors* of *successors*)
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
44
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
45 Obsolete markers may refer changesets that are not known locally.
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
46 So, *direct precursors* of a changeset may be unknown locally.
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
47 This is why we usually focus on the **first known precursors** of the rewritten
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
48 changeset. The same apply for *successors*.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
49
370
7ef8ab8c6fea some more fix
Pierre-Yves.David@ens-lyon.org
parents: 369
diff changeset
50 Changeset in *any successors* which are not **obsolete** are called
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
51 **newest successors**..
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
52
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
53 .. note:: I'm not very happy with this naming scheme and I'm looking for a
505
e462b3bd3e82 doc: fix emphasis
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 493
diff changeset
54 better distinction between *direct successors* and **any successors**.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
55
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
56 Possible changesets "type"
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
57 --------------------------
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
58
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
59 The following table describes names and behaviors of changesets affected by
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
60 obsolete markers. The left column describes generic categories and the right
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
61 columns are about sub-categories.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
62
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
63
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
64 +---------------------+--------------------------+-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
65 | **mutable** | **obsolete** | **extinct** |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
66 | | | |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
67 | Changeset in either | Obsolete changeset is | *extinct* changeset is |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
68 | *draft* or *secret* | *mutable* used as a | *obsolete* which has only |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
69 | phase. | *precursor*. | *obsolete* descendants. |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
70 | | | |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
71 | | A changeset is used as | They can safely be: |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
72 | | a *precursor* when at | |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
73 | | least one obsolete | - hidden in the UI, |
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
74 | | marker refers to it | - silently excluded from |
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
75 | | as precursors. | pull and push operations |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
76 | | | - mostly ignored |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
77 | | | - garbage collected |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
78 | | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
79 | | +-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
80 | | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
81 | | | **suspended** |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
82 | | | |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
83 | | | *suspended* changeset is |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
84 | | | *obsolete* with at least |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
85 | | | one non-obsolete descendant |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
86 | | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
87 | | | Thoses descendants prevent |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
88 | | | properties of extincts |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
89 | | | changesets to apply. But |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
90 | | | they will refuse to be |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
91 | | | pushed without --force. |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
92 | | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
93 | +--------------------------+-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
94 | | | |
493
9a4867b79f6c doc: some terms update
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 492
diff changeset
95 | | **troubled** | **unstable** |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
96 | | | |
493
9a4867b79f6c doc: some terms update
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 492
diff changeset
97 | | *troubled* has | *unstable* is a changeset |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
98 | | unresolved issue caused | with obsolete ancestors. |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
99 | | by *obsolete* relations. | |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
100 | | | |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
101 | | Possible issues are | It must be rebased on a |
493
9a4867b79f6c doc: some terms update
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 492
diff changeset
102 | | listed in the next | non *troubled* base to |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
103 | | column. It is possible | solve the problem. |
493
9a4867b79f6c doc: some terms update
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 492
diff changeset
104 | | for *troubled* | |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
105 | | changeset to combine | (possible alternative name: |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
106 | | multiple issue at once. | precarious) |
575
36de5e30d3eb doc: rename conflicting to divergent.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 527
diff changeset
107 | | (a.k.a. divergent and | |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
108 | | unstable) +-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
109 | | | |
593
26f76b38f879 evolve: Rename latecomer into bumped
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 575
diff changeset
110 | | (possible alternative | **bumped** |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
111 | | names: unsettled, | |
593
26f76b38f879 evolve: Rename latecomer into bumped
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 575
diff changeset
112 | | troublesome | *bumped* is a changeset |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
113 | | | that tries to be successor |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
114 | | | of public changesets. |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
115 | | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
116 | | | Public changeset can't |
370
7ef8ab8c6fea some more fix
Pierre-Yves.David@ens-lyon.org
parents: 369
diff changeset
117 | | | be deleted and replace |
593
26f76b38f879 evolve: Rename latecomer into bumped
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 575
diff changeset
118 | | | *bumped* |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
119 | | | need to be converted into |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
120 | | | an overlay to this public |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
121 | | | changeset. |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
122 | | | |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
123 | | | (possible alternative names:|
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
124 | | | mislead, naive, unaware, |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
125 | | | mindless, disenchanting) |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
126 | | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
127 | | +-----------------------------+
575
36de5e30d3eb doc: rename conflicting to divergent.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 527
diff changeset
128 | | | **divergent** |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
129 | | | |
575
36de5e30d3eb doc: rename conflicting to divergent.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 527
diff changeset
130 | | | *divergent* is changeset |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
131 | | | that appears when multiple |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
132 | | | changesets are successors |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
133 | | | of the same precursor. |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
134 | | | |
575
36de5e30d3eb doc: rename conflicting to divergent.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 527
diff changeset
135 | | | *divergent* are solved |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
136 | | | through a three ways merge |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
137 | | | between the two |
575
36de5e30d3eb doc: rename conflicting to divergent.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 527
diff changeset
138 | | | *divergent* , |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
139 | | | using the last "obsolete- |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
140 | | | -common-ancestor" as the |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
141 | | | base. |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
142 | | | |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
143 | | | (*splitting* is |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
144 | | | properly not detected as a |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
145 | | | conflict) |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
146 | | | |
493
9a4867b79f6c doc: some terms update
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 492
diff changeset
147 | | | (possible alternative names:|
575
36de5e30d3eb doc: rename conflicting to divergent.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 527
diff changeset
148 | | | clashing, rival, concurent, |
36de5e30d3eb doc: rename conflicting to divergent.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 527
diff changeset
149 | | | conflicting) |
493
9a4867b79f6c doc: some terms update
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 492
diff changeset
150 | | | |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
151 | +--------------------------+-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
152 | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
153 | | Mutable changesets which are neither *obsolete* or |
493
9a4867b79f6c doc: some terms update
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 492
diff changeset
154 | | *troubled* are *"ok"*. |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
155 | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
156 | | Do we really need a name for it ? *"ok"* is a pretty |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
157 | | crappy name :-/ other possibilities are: |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
158 | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
159 | | - stable (confusing with stable branch) |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
160 | | - sane |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
161 | | - healthy |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
162 | | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
163 +---------------------+--------------------------------------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
164 | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
165 | **immutable** |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
166 | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
167 | Changesets in the *public* phases. |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
168 | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
169 | Rewriting operation refuse to work on immutable changeset. |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
170 | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
171 | Obsolete markers that refer an immutable changeset as precursors have |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
172 | no effect on the precussors but may have effect on the successors. |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
173 | |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
174 | When a *mutable* changeset becomes *immutable* (changing its phase from draft|
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
175 | to public) it is just *immutable* and loose any property of it's former |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
176 | state. |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
177 | |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
178 | The phase properties says that public changesets stay as *immutable* forever.|
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
179 | |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
180 +------------------------------------------------------------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
181
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
182
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
183
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
184 Command and operation name
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
185 --------------------------
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
186
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
187
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
188 Existing terms
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
189 ``````````````
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
190
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
191 Mercurial core already uses the following terms:
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
192
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
193 :amend: to rewrite a changeset
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
194 :graft: to copy a changeset
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
195 :rebase: to move a changeset
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
196
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
197
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
198 Uncommit
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
199 ````````
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
200
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
201 Remove files from a commit (and leave them as dirty in the working directory)
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
202
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
203 The *evolve* extension have an `uncommit` command that aims to replace most
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
204 `rollback` usage.
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
205
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
206 Fold
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
207 ````
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
208
369
f348088d3b3f marmoute N+2 pass
Pierre-Yves.David@ens-lyon.org
parents: 368
diff changeset
209 Collapse multiple changesets into a unique one.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
210
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
211 The *evolve* extension will have a `fold` command.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
212
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
213 Prune
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
214 `````
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
215
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
216 Make a changeset obsolete without successors.
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
217
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
218 This an important operation as it should mostly replace *strip*.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
219
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
220 Alternative names:
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
221
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
222 - kill: shall has funny effects when you forget "hg" in front of ``hg kill``.
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
223 - obsolete: too vague, too long and too generic.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
224
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 370
diff changeset
225 evolve
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 593
diff changeset
226 ``````
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
227
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
228 Automatically resolve *troublesome* changesets
593
26f76b38f879 evolve: Rename latecomer into bumped
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 575
diff changeset
229 (*unstable*, *bumped* and *divergent*)
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
230
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
231 This is an important name as hg pull/push will suggest it the same way it
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
232 suggest merging when you add heads.
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
233
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
234 alternative names:
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
235
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
236 - solve (too generic ?)
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 370
diff changeset
237 - stabilize