======================================== Safe Mutable History ======================================== Here are various Materials on planned improvement to mercurial regarding rewriting mutable history. The effort split in two part: * The **obsolete marker** concept aiming to provide and alternative to strip to get ride of changesets. * A mercurial extension: **evolve** that rewrite using *obsolete marker* under the hood. regarding mercurial internals, the first and most important step is the **obsolete marker**. However most user will never be directly exposed to the concept. For this reason document about changeset evolution are put first. Evolve: A robust alternative to MQ ==================================== Evolve is an experimental history rewriting extensions that use the obsolete marker. It is inspired from MQ and pbranch but have multiple advantage over them. * sticks to "Work where you are" philosophy (I'll need better wording for that) * Handle any kind history. Even history with branch and merge. * Use robust mercurial's merge mechanism simple conflict are handled by real merge tools using appropriate ancestor. Conflict are much rarer and much more user friendly. * All mutable history available at the same time You are do not need to unapply and apply patche to access various part of you history. * Use plain changeset only. Evole create and exchange real changeset only. Mutable history can be used in all usual operation 'pull, push, log, diff …) * Allow sharing and collaborating mutable history without fear of duplicate. (thanks to obsolete marker). * Cover all mq usage but guard. .. warning:: The evolve extention and the obsolete marker are at an experimental stage. While using obsolet you'll likely be exposed to complexe implication of the **obsolete marker** concept. I do not recommend non power user to test this at this stage. Production ready version should hide such details to normal user. To enable the evolve extension use:: $ hg clone http://hg-dev.octopoid.net/hgwebdir.cgi/mutable-history/ $ mutable-history/enable.sh > ~/.hgrc .. toctree:: :maxdepth: 1 tutorial evolve-faq from-mq Smart changeset deletion: Obselete Marker ========================================== for dev and advanced user .. toctree:: :maxdepth: 1 obs-concept glossary obs-implementation Know canveas ================================= Big flashy warning on current remaining issue