docs/concepts.rst
changeset 4620 a05bfdf372fb
parent 4619 93514c421528
child 4621 8784dfc6537c
equal deleted inserted replaced
4619:93514c421528 4620:a05bfdf372fb
    90 
    90 
    91 (If you prefer a calculus metaphor to set theory, it might help to
    91 (If you prefer a calculus metaphor to set theory, it might help to
    92 think of the traditional parent/child DAG as the first derivative of
    92 think of the traditional parent/child DAG as the first derivative of
    93 your source code, and the obsolescence DAG as the second derivative.)
    93 your source code, and the obsolescence DAG as the second derivative.)
    94 
    94 
    95 Unstable changesets (orphan, bumped, divergent)
    95 Unstable changesets (orphan, bumped, content-divergent)
    96 -----------------------------------------------
    96 -------------------------------------------------------
    97 
    97 
    98 Evolving history can introduce problems that need to be solved. For
    98 Evolving history can introduce problems that need to be solved. For
    99 example, if you prune a changeset *P* but not its descendants, those
    99 example, if you prune a changeset *P* but not its descendants, those
   100 descendants are now on thin ice. To push a changeset to another
   100 descendants are now on thin ice. To push a changeset to another
   101 repository *R*, all of its ancestors must be present in *R* or pushed
   101 repository *R*, all of its ancestors must be present in *R* or pushed
   127 passenger who is left behind in the airport terminal has been
   127 passenger who is left behind in the airport terminal has been
   128 "bumped".)
   128 "bumped".)
   129 
   129 
   130 The third sort of trouble is when Alice and Bob both amend the same
   130 The third sort of trouble is when Alice and Bob both amend the same
   131 changeset *C* to have different successors. When this happens, the
   131 changeset *C* to have different successors. When this happens, the
   132 successors are both called *divergent* (unless one of them is in
   132 successors are both called *content-divergent* (unless one of them is in
   133 public phase; only mutable changesets are divergent).
   133 public phase; only mutable changesets are content-divergent).
   134 
   134 
   135 The collective term for orphan, bumped, and divergent changeset is
   135 The collective term for orphan, bumped, and content-divergent changeset is
   136 *unstable*::
   136 *unstable*::
   137 
   137 
   138   unstable = orphan ∪ bumped ∪ divergent
   138   unstable = orphan ∪ bumped ∪ content-divergent
   139 
   139 
   140 It is possible for a changeset to be in any of the unstable categories
   140 It is possible for a changeset to be in any of the unstable categories
   141 at the same time: it might be an orphan and divergent, or bumped and
   141 at the same time: it might be an orphan and content-divergent, or bumped and
   142 divergent, or whatever.
   142 content-divergent, or whatever.
   143 
   143 
   144   [diagram: Venn diagram of unstable changesets, showing overlap]
   144   [diagram: Venn diagram of unstable changesets, showing overlap]
   145 
   145 
   146 The presence of unstable changesets indicates the need to run ``hg
   146 The presence of unstable changesets indicates the need to run ``hg
   147 evolve``.
   147 evolve``.