docs/index.rst
changeset 494 80bd1e8f5ae9
parent 492 7ecd41520dae
child 498 53d7e3413337
equal deleted inserted replaced
493:9a4867b79f6c 494:80bd1e8f5ae9
    14 
    14 
    15    instability
    15    instability
    16 
    16 
    17 The effort is split in two parts:
    17 The effort is split in two parts:
    18 
    18 
    19  * The **obsolete marker** concept aims to provide an alternative to ``strip``
    19  * The **obsolescence marker** concept aims to provide an alternative to ``strip``
    20    to get rid of changesets.
    20    to get rid of changesets. This concept have been partially implemented in
       
    21    Mercurial 2.3.
    21 
    22 
    22  * The **evolve** mercurial extension rewrites history using obsolete
    23  * The **evolve** mercurial extension rewrites history using obsolete
    23    *marker* under the hood.
    24    *marker* under the hood.
    24 
    25 
    25 The first and most important step is by far the **obsolete marker**. However
    26 The first and most important step is by far the **obsolescence marker**. However
    26 most users will never be directly exposed to the concept. For this reason
    27 most users will never be directly exposed to the concept. For this reason
    27 this manual starts with changeset evolution.
    28 this manual starts with changeset evolution.
    28 
    29 
    29 Evolve: A robust alternative to MQ
    30 Evolve: A robust alternative to MQ
    30 ====================================
    31 ====================================
    67 
    68 
    68             XXX make sure to read the XXX section before using it.
    69             XXX make sure to read the XXX section before using it.
    69 
    70 
    70             Production ready version should hide such details to normal user.
    71             Production ready version should hide such details to normal user.
    71 
    72 
       
    73 The evolve extension require mercurial 2.3
       
    74 
    72 To enable the evolve extension use::
    75 To enable the evolve extension use::
    73 
    76 
    74     $ hg clone https://bitbucket.org/marmoute/mutable-history -u stable
    77     $ hg clone https://bitbucket.org/marmoute/mutable-history -u stable
    75     $ mutable-history/enable.sh >> ~/.hgrc
    78     $ mutable-history/enable.sh >> ~/.hgrc
    76 
    79 
    77 You will probably want to use the associated version of hgview (qt viewer
    80 You will probably want to use hgview_ to visualize obsolescence. Version 1.6.2
    78 recommended). ::
    81 or later is required.
    79 
    82 
    80     $ hg clone http://hg-lab.logilab.org/wip/hgview/ -u obsolete
    83 .. _hgview: http://www.logilab.org/project/hgview/
    81     $ cd hgview
       
    82     $ python setup.py install --user
       
    83 
    84 
    84 Works with mercurial 2.2
    85 (The old version 0.7 of evolve works with mercurial 2.2 but have far less feature)
       
    86 
    85 
    87 
    86  ---
    88  ---
    87 
    89 
    88 For more information see documents below:
    90 For more information see documents below:
    89 
    91 
   135 =================================
   137 =================================
   136 
   138 
   137 Here is a list of know issue that will be fixed later:
   139 Here is a list of know issue that will be fixed later:
   138 
   140 
   139 
   141 
   140 * rewriting conflict are not detected yet``hg evolve`` does not
       
   141   handle them.
       
   142 
       
   143 * ``hg update`` can move an obsolete parent
       
   144 
       
   145 * you need to provide to `graft --continue -O` if you started you
   142 * you need to provide to `graft --continue -O` if you started you
   146   graft using `-O`.
   143   graft using `-O`.
   147 
   144 
   148 * ``hg merge`` considers an extinct head to be a valid target, hence requiring
       
   149   you to manually specify target all the time.
   145   you to manually specify target all the time.
   150 
   146 
   151 * trying to exchange obsolete marker with a static http repo will crash.
   147 * trying to exchange obsolete marker with a static http repo will crash.
   152 
       
   153 * trying to exchange a lot of obsolete markers through http crash.
       
   154 
       
   155 * Extinct changesets are turned secret by various commands.
       
   156 
   148 
   157 * Extinct changesets are hidden using the *hidden* feature of mercurial only
   149 * Extinct changesets are hidden using the *hidden* feature of mercurial only
   158   supported by a few commands.
   150   supported by a few commands.
   159 
   151 
   160   Only ``hg log``, ``hgview`` and `hg glog` support it. ``hg head`` or other visual viewer don't.
   152   Only ``hg log``, ``hgview`` and `hg glog` support it. ``hg head`` or other visual viewer don't.