Differences between revisions 2 and 3
Revision 2 as of 2015-06-12 10:04:34
Size: 1810
Comment:
Revision 3 as of 2015-06-12 10:04:50
Size: 1749
Comment:
Deletions are marked like this. Additions are marked like this.
Line 25: Line 25:
== Feature ==

 * Can be rollbacked, modified and rerun

Note:

This page is primarily intended for developers of Mercurial.

Plan History Rewriting Plan

Status: Project

Main proponents: Pierre-YvesDavid PeterArrenbrecht

Internal infrastructure to unify and empower history rewriting operation. With possible user facing UI (for advanced user),

1. Goal

Mercurial have been gaining multiple history rewriting options over the years (rebase, histedit, evolve, etc). We need to unify both internal implementation and user experience. For this purpose we need these command to rely on a unified history rewriting module in Mercurial core and introduce a unique user facing concept handling multi-step operations that rewrite changesets.

This unification should also be the occasion for advance user to have access to more feature:

  • ability to execute one operation at a time (as hg evolve is currently doing),

  • preview of the resulting of the plan (with conflict prediction),
  • ability to edit the plan.

Current experience for basic user should not be affected by the above change.

2. Roadmap

  • Gather history rewriting function into a core module and get commands to use it,
  • expose an API to build and submit a plan,

  • use this plan as the on disk representation for in progress operation,

  • have a UI for the user to edit a plan,

  • expose UI to execute a plan step by step / have an option for commands to just schedule the plan,

  • add some "preview" capability to the plan.

3. See Also


CategoryDeveloper CategoryOldFeatures

PlanHistoryRewritePlan (last edited 2015-06-12 10:51:29 by Pierre-YvesDavid)