Differences between revisions 1 and 11 (spanning 10 versions)
Revision 1 as of 2006-02-17 17:20:01
Size: 833
Editor: mpm
Comment:
Revision 11 as of 2012-05-08 16:02:56
Size: 1749
Editor: mpm
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<Include(A:dev)>>
<<Include(A:dated)>>
<<Include(A:style)>>
Line 5: Line 9:
Proposal: we can delete pieces of history by removing the deltas and recording a size of -1 in the index. This can be accomplished by a "punch" tool or command. Then we teach various things to behave or complain appropriately when they encounter punched versions.  Proposal: we can delete pieces of history by removing the deltas and recording a size of -1 in the index. This can be accomplished by a "punch" tool or command. Then we teach various things to behave or complain appropriately when they encounter punched versions.

Another related feature request: Some projects have very big repositories which take very long to download. In order to make this faster, it should be possible to specify the desired history range with "hg clone", so instead of, say 700MB, only 100MB of the history get transferred. If the more parts of the history are required for a certain command the data should automatically be retrieved from the server. See OverlayRepository or ShallowClone for other ways to implement this feature.
Line 8: Line 14:
 * partial history clone/pull with automatic pulling of additional data on-demand
Line 15: Line 21:

Not to be confused with PartialClone, which trims the directory tree, not the history tree.

Patch for this: http://www.selenic.com/pipermail/mercurial/2006-June/008878.html

Pullable repository: http://oss.oracle.com/mercurial/mason/punch

----
CategoryNewFeatures

Note:

This page is primarily intended for developers of Mercurial.

Note:

This page appears to contain material that is no longer relevant. Please help improve this page by updating its content.

{i} This page does not meet our wiki style guidelines. Please help improve this page by cleaning up its formatting.

Problem: it would be nice to be able to drop history before a certain point and remove various branches or commits to save space and delete problematic material.

It is also important that we remember what we've deleted so we can avoid re-pulling it from people who've earlier pulled it from us.

Proposal: we can delete pieces of history by removing the deltas and recording a size of -1 in the index. This can be accomplished by a "punch" tool or command. Then we teach various things to behave or complain appropriately when they encounter punched versions.

Another related feature request: Some projects have very big repositories which take very long to download. In order to make this faster, it should be possible to specify the desired history range with "hg clone", so instead of, say 700MB, only 100MB of the history get transferred. If the more parts of the history are required for a certain command the data should automatically be retrieved from the server. See OverlayRepository or ShallowClone for other ways to implement this feature.

To be done:

  • partial history clone/pull with automatic pulling of additional data on-demand
  • teach revlog about punched revisions and fixing up deltas
  • create punch command
  • make sure pull works
  • make sure checkout complains appropriately
  • make sure annotate does something sensible
  • make sure verify doesn't get too upset

Not to be confused with PartialClone, which trims the directory tree, not the history tree.

Patch for this: http://www.selenic.com/pipermail/mercurial/2006-June/008878.html

Pullable repository: http://oss.oracle.com/mercurial/mason/punch


CategoryNewFeatures

TrimmingHistory (last edited 2012-10-25 20:38:05 by mpm)