hg.rst
changeset 1667 40bb400c925e
parent 1660 71e627dc8b8c
child 1668 86a2cb376ee9
--- a/hg.rst	Thu Jan 08 01:54:26 2015 +0200
+++ b/hg.rst	Thu Jan 08 17:50:01 2015 +0200
@@ -390,6 +390,36 @@
   $ hg qpop -a
   $ for patch in `hg qser`; do hg qrm $patch; done
 
+Split patch in MQ.
+==================
+
+Enable built-in extensions::
+
+  [extensions]
+  mq=
+  record=
+  shelve=
+
+Then move MQ into working tree and split changes and remove original patch::
+
+  $ hg qpop my.patch
+  $ patch -p1 <.hg/patches/my.patch
+
+  $ hg qnew -i my1.patch
+   ....
+  $ hg qnew -i my2.patch
+   ....
+  $ hg qnew myN.patch   # last without interactive stuff
+
+  $ hg qdelete --keep my.patch
+
+Between ``my$i.patch`` and ``my$((i+1)).patch`` you can use ``hg shelve``/``hg
+unshelve`` to test if project built and pass tests on top of ``my$i.patch``
+without later changes!
+
+If you find that something missing on this stage use ``hg qref`` on shelved
+changes or ``hg qref -i`` on unshelved changes!
+
 Proxy.
 ======
 ::