Differences between revisions 2 and 3
Revision 2 as of 2016-04-20 23:23:51
Size: 1324
Revision 3 as of 2017-12-06 21:36:57
Size: 1350
Editor: AugieFackler
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:

See InMemoryMergePlan2
Line 35: Line 37:
CategoryDeveloper CategoryNewFeatures CategoryDeveloper CategoryOldFeatures

/!\ This page is primarily intended for Mercurial's developers.

See InMemoryMergePlan2

In-Memory Merge

Status: Project

Main proponents: Sean Farley (smf)

/!\ This is a speculative project and does not represent any firm decisions on future behavior.

Following up on my previous Google Summer of Code (2013), I plan to finish implementing in-memory merge. This will allow a full merge, in-memory, without needed to change the working directory. The benefits of this are many but most notably is a large speed-up for rebase and the ability to preview a merge.

1. Goal

Pretty sparse right now. See below for more info.

2. Detailed description

There are some bumps in the road that will need some thinking. Things such as conflicts, large files, etc.

3. Roadmap

  • {X} abstract context object to handle writing of files (smf has code, see next item)

  • {X} Un-bitrot smf's old branch

  • {X} refactor three way merge to use context objects instead of working dir

  • {X} seriously, refactor three way merge to use context objects instead of working dir

  • {X} have an experimental option to use in memory merge for rebase (& co),

  • {X} implement a clean fallback to disk (large files, conflicts, etc.)

  • {X} turn on memory rebase (& co) on by default,

CategoryDeveloper CategoryOldFeatures

InMemoryMergePlan (last edited 2017-12-06 21:36:57 by AugieFackler)