1392
Comment: initial stub
|
2398
update install method
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
= Rebase Extension = | = Evolve Extension = |
Line 5: | Line 5: |
''Author: Pierre-Yves David for Logilab'' | ''Author: Pierre-Yves David for Various company'' |
Line 9: | Line 9: |
(i) This extension enable and enhance the inprogress ChangesetEvolution work. See the dedicated page for details before using it. | |
Line 10: | Line 11: |
/!\ This feature is experimental to be used only by experienced Mercurial user that understand underlying concept | Code repository: https://www.mercurial-scm.org/repo/evolve/ |
Line 13: | Line 15: |
The `evolve` extension is an experimental implementation of the ChangesetEvolution concept. Most of its content has been moved into core except: | |
Line 14: | Line 17: |
The `evolve` extension is an experimental implementation of the ChangesetEvolution concept. Most of it's content have been moved into core except: | * additional history rewriting commands * the evolve command to automatically solve troubles * some user interface warning messages related to obsolete changeset troubles |
Line 16: | Line 21: |
* additional history rewriting commands * the evolve command to automatically solves troubles * some user interface warning messages related to obsolescence changesets troubles, |
/!\ The evolve extension enables the ChangesetEvolution feature, changing some of Mercurial's default behavior. |
Line 20: | Line 23: |
Current official home page: http://hg-lab.logilab.org/doc/mutable-history/html/ | * history rewriting commands do not strip changesets anymore; they make them obsolete. * history rewriting commands will work on any changesets, possibly creating unstable changesets. * '''pull''' and '''push''' exchange obsolescence data with other evolve-enabled repositories - this may have a performance impact! Current official Documentation: https://www.mercurial-scm.org/doc/evolution/ |
Line 23: | Line 30: |
uncommit:: extracts changes from a commit fold:: gather changes from multiple changesets in a single one prune:: discard changesets (using obsolescence marker) touch:: replace a changesets with one with the same payload but with a different node gdown:: move to the parent of the current checkout changeset gdown:: move to the children of the current checkout changeset evolve:: automatically solve troubles affecting changesets |
uncommit:: extracts changes from a commit into the working directory, fold:: gathers changes from multiple changesets into a single one, split:: dispatch changes from a single changesets into multiple one, prune:: discards changesets (using obsolescence markers), touch:: replaces a changeset with a different one containing the same payload, but with a different hash, prev:: moves to the parent of the current changeset, next:: moves to the child of the current changeset, evolve:: automatically resolves troubles affecting changesets |
Line 34: | Line 40: |
* a warning is issued when the current working directory parent becomes obsolete * a warning is issued when a command results in more troubled changesets |
|
Line 35: | Line 43: |
* issue a warning when current working directory parent becomes obsolete * issue a warning when a commands result in more troubled changesets |
== Setup == The extension is [[https://pypi.python.org/pypi/hg-evolve|available on PyPi]] To install use {{{ $ pip install --user hg-evolve }}} Then configure your ''`.hgrc`'' to enable the extension by adding the following lines (remember to replace {{{<dir>}}} with the path where you just cloned the extension): {{{ [extensions] evolve = }}} |
Evolve Extension
This extension is not distributed along with Mercurial releases
Author: Pierre-Yves David for Various company
(i) This extension enable and enhance the inprogress ChangesetEvolution work. See the dedicated page for details before using it.
Code repository: https://www.mercurial-scm.org/repo/evolve/
1. Introduction
The evolve extension is an experimental implementation of the ChangesetEvolution concept. Most of its content has been moved into core except:
- additional history rewriting commands
- the evolve command to automatically solve troubles
- some user interface warning messages related to obsolete changeset troubles
The evolve extension enables the ChangesetEvolution feature, changing some of Mercurial's default behavior.
- history rewriting commands do not strip changesets anymore; they make them obsolete.
- history rewriting commands will work on any changesets, possibly creating unstable changesets.
pull and push exchange obsolescence data with other evolve-enabled repositories - this may have a performance impact!
Current official Documentation: https://www.mercurial-scm.org/doc/evolution/
2. Additional Commands
- uncommit
- extracts changes from a commit into the working directory,
- fold
- gathers changes from multiple changesets into a single one,
- split
- dispatch changes from a single changesets into multiple one,
- prune
- discards changesets (using obsolescence markers),
- touch
- replaces a changeset with a different one containing the same payload, but with a different hash,
- prev
- moves to the parent of the current changeset,
- next
- moves to the child of the current changeset,
- evolve
- automatically resolves troubles affecting changesets
3. Additional UI Messages
- a warning is issued when the current working directory parent becomes obsolete
- a warning is issued when a command results in more troubled changesets
4. Setup
The extension is available on PyPi
To install use
$ pip install --user hg-evolve
Then configure your .hgrc to enable the extension by adding the following lines (remember to replace <dir> with the path where you just cloned the extension):
[extensions] evolve =