docs/obs-terms.rst
author Alain Leufroy <alain.leufroy@logilab.fr>
Sun, 15 Jul 2012 16:19:02 +0200
branchstable
changeset 368 c2f3cdd5a2a2
parent 363 5280e7ce026d
child 369 f348088d3b3f
permissions -rw-r--r--
[docs] obsolete: fix some typos
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
     1
-----------------------------------------------------------
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
     2
Terminology of the obsolete concept
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
     3
-----------------------------------------------------------
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
     4
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
     5
Obsolete markers
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
     6
---------------------------------
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
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
     9
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
    10
version.
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    11
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    12
Old changesets are called **precursors** while their new versions are called
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    13
**successors**. A marker always registers a single *precursor* to:
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    14
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    15
- no *successor*: the *precursor* is just discarded.
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    16
- one *successor*: the *precursor* has been rewritten
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    17
- multiple *successors*: the *precursor* has been splitted in multiple
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    18
  changesets.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    19
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    20
.. 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
    21
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    22
.. :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
    23
..              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
    24
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    25
.. :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
    26
..              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
    27
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    28
Chainning obsolete markers is allowed to rewrite a changeset that is already a
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    29
*successor*. This is a kind of *second order version control*.
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    30
To clarify ambiguous situtations one can use **direct precursors** or
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    31
**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
    32
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    33
The set of all **bsolete markers* forms a direct acyclic graph the same way
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    34
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
    35
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    36
: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
    37
                 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
    38
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    39
:any successors: are transitive successors of a changeset: *direct successors*
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
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
    43
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
    44
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
    45
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
    46
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    47
Changeset in *any successors* which are not **precursor**[#] are called
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    48
**newest successors**.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    49
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    50
.. note:: I'm not very happy with this naming scheme and I'm looking for a
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    51
          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
    52
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    53
Possible changesets "type"
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    54
---------------------------------
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    55
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    56
The following table describes names and behaviors of changesets affected by
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    57
obsolete markers. Thge left column describes generic categories and the right
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    58
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
    59
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    60
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    61
+---------------------+--------------------------+-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    62
| **mutable**         | **obsolete**             | **extinct**                 |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    63
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    64
| 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
    65
| *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
    66
| 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
    67
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    68
|                     | 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
    69
|                     | 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
    70
|                     | least one obsolete       | - hidden in the UI,         |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    71
|                     | marker refers to it.     | - silently excluded from    |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    72
|                     |                          |   pull and push operations  |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    73
|                     |                          | - mostly ignored            |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    74
|                     |                          | - garbage collected         |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    75
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    76
|                     |                          +-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    77
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    78
|                     |                          | **suspended**               |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    79
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    80
|                     |                          | *suspended* changeset is    |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    81
|                     |                          | *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
    82
|                     |                          | one non-obsolete descendant |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    83
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    84
|                     |                          | Thoses descendants prevent  |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    85
|                     |                          | properties of extincts      |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    86
|                     |                          | changesets to apply. But    |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    87
|                     |                          | 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
    88
|                     |                          | pushed without --force.     |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    89
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    90
|                     +--------------------------+-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    91
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    92
|                     | **troublesome**          | **unstable**                |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    93
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    94
|                     | *troublesome* has        | *unstable* is a changeset   |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    95
|                     | unresolved issue caused  | with obsolete ancestors.    |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    96
|                     | by *obsolete* relations. |                             |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
    97
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    98
|                     | Possible issues are      | It must be rebased on a     |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
    99
|                     | listed in the next       | non *troublesome* base to   |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   100
|                     | column. It is possible   | solve the problem.          |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   101
|                     | for *troublesome*        |                             |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   102
|                     | 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
   103
|                     | multiple issue at once.  | precarious)                 |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   104
|                     | (a.k.a. conflicting and  |                             |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   105
|                     | unstable)                +-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   106
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   107
|                     | (possible alternative    | **latecomer**               |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   108
|                     | names: unsettled,        |                             |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   109
|                     | troubled)                | *latecomer* is a changeset  |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   110
|                     |                          | that tries to be successor  |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   111
|                     |                          | of  public changesets.      |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   112
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   113
|                     |                          | Public changeset can't      |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   114
|                     |                          | be *precursor*. *latecomer* |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   115
|                     |                          | need to be converted into   |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   116
|                     |                          | an overlay to this public   |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   117
|                     |                          | changeset.                  |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   118
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   119
|                     |                          | (possible alternative names:|
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   120
|                     |                          | mislead, naive, unaware,    |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   121
|                     |                          | mindless, disenchanting)    |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   122
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   123
|                     |                          +-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   124
|                     |                          | **conflicting**             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   125
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   126
|                     |                          | *conflicting* is changeset  |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   127
|                     |                          | 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
   128
|                     |                          | changesets are successors   |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   129
|                     |                          | 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
   130
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   131
|                     |                          | *conflicting* are solved    |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   132
|                     |                          | through a three ways merge  |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   133
|                     |                          | between the two             |
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   134
|                     |                          | *conflictings*,             |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   135
|                     |                          | using the last "obsolete-   |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   136
|                     |                          | -common-ancestor" as the    |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   137
|                     |                          | base.                       |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   138
|                     |                          |                             |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   139
|                     |                          | (*splitting* is             |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   140
|                     |                          | 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
   141
|                     |                          | conflict)                   |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   142
|                     |                          |                             |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   143
|                     +--------------------------+-----------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   144
|                     |                                                        |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   145
|                     | Mutable changesets which are neither *obsolete* or     |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   146
|                     | *troublesome* are *"ok"*.                              |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   147
|                     |                                                        |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   148
|                     | 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
   149
|                     | 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
   150
|                     |                                                        |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   151
|                     | - 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
   152
|                     | - sane                                                 |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   153
|                     | - healthy                                              |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   154
|                     |                                                        |
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
|                                                                              |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   157
|     **immutable**                                                            |
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
| 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
   160
|                                                                              |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   161
| 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
   162
|                                                                              |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   163
| 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
   164
| 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
   165
|                                                                              |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   166
| 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
   167
| 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
   168
| state.                                                                       |
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   169
|                                                                              |
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   170
| 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
   171
|                                                                              |
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   172
+------------------------------------------------------------------------------+
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   173
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   174
.. note:: I'm not very happy with the naming of:
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   175
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   176
          - "ok" changeset
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   177
          - latecomer
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   178
          - troublesome
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
          Any better idea are welcome.
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
Command and operation name
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   184
---------------------------------
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   185
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
Existing terms
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   188
``````````````
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   189
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   190
Mercurial 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
   191
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   192
:amend: to rewrite a changeset
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   193
:graft: to copy a changeset
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   194
: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
   195
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
Uncommit
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   198
`````````````
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   199
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   200
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
   201
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   202
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
   203
`rollback` usage.
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   204
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   205
Fold
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   206
``````````
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   207
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   208
Collapse multiple changesets into a uniq one.
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   209
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   210
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
   211
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   212
Prune
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   213
``````````
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   214
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   215
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
   216
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   217
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
   218
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   219
Alternative names:
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   220
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   221
- 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
   222
- 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
   223
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   224
Stabilize
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   225
```````````````
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   226
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   227
Automatically resolve *troublesome* changesets
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   228
(*unstable*, *latecomer* and *conflicting*)
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   229
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   230
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
   231
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
   232
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   233
I do not like stabilize much.
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   234
368
c2f3cdd5a2a2 [docs] obsolete: fix some typos
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 363
diff changeset
   235
alternative names:
363
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   236
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   237
- solve (too generic ?)
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   238
- evolve (too vague)
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   239
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   240
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   241
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   242
.. note:: I'm not very happy with the naming of:
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   243
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   244
          - "ok" changeset
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   245
          - latecomer
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   246
          - troublesome
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   247
5280e7ce026d doc: big update of terms and summary of the concept
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
   248
          Any better idea are welcome.