Search code examples
mercurialchangesetreview-board

How to submit a sequence of changesets into Review Board (Mercurial)?


I want to submit a sequence of changesets as one changeset (patch) into Review Board. How to do that?


Solution

  • The technical term for combining multiple patches into one is "folding". If you want to truly fold a series of commits into one (changing history), then the HistEdit extension provides a way as do Mercurial Queues.

    If you're just interested in generating a patch, then you have a few options. You can use hg export (but this will not fold the patches together, but rather dumps a series of patches to console) or you can use hg diff to generate a diff. More precisely,

    hg diff -r start:end > summary.patch
    

    will generate a single diff for all the changes in the range start to end. You can replace end with tip to get all changes starting with start. This should even work if there are merge changesets in between. (hg export produces odd output if there are merge changesets in there.)