Projects:
Extensions:
Todo:
- Mq: add a qrebase command to wrap qsave -e c; qpush -a -m
- qrebase [rev]: reapply the currently applied patches to rev (defaulting to the tip of the current branch).
- Update to rev, and attempt to apply each patch. If apply fails, perform a three-way merge with the original patch changeset, its ancestor, and the current rev. One way to perhaps cut down on the extraneous 3-way merge garbage might be to attempt to bisect between rev and the original revv for the last place where the patch can be successfully applied, then use that as the merge other end.
- qrebase [rev]: reapply the currently applied patches to rev (defaulting to the tip of the current branch).
- Transplant: Support merge transplants. Use original second parent?
- automatic resolution of previously handled merge conflicts, cf git-rerere. plan of sorts:
- To apply a recorded resolution:
- Perform simplemerge to discover conflict blocks
- For each conflict block with a recorded resolution, apply that resolution to LOCAL and OTHER.
- Discard the merge result and pass the modified LOCAL and OTHER to the regular merge process.
- Keep a record of the conflict blocks generated at step 1, for caching new resolutions.
- config extension to allow for machine-updateable hgrc settings
- mirror extension to make a local repository identical to a remote (stripping changes that have disappeared in the source). Could be particularly useful for repositories with mq patches applied.
CVS pserver extension to access hg repositories via CVS client. Useful for services like ohloh or to leverage existing GUI tools for CVS. An svnserver would also be attractive but probably requires more baggage (DAV etc). Very preliminary work currently at http://hg.kublai.com/mercurial/extensions/pserve