help: clarify the pre-txnclose-phase documentation stable
authorBoris Feld <boris.feld@octobus.net>
Fri, 27 Oct 2017 21:43:22 +0200
branchstable
changeset 34931 3f8273172636
parent 34930 28baeab476cc
child 34932 fd78276948b4
help: clarify the pre-txnclose-phase documentation Gregory Szorc requested some clarification.
mercurial/help/config.txt
--- a/mercurial/help/config.txt	Fri Oct 27 21:35:34 2017 +0200
+++ b/mercurial/help/config.txt	Fri Oct 27 21:43:22 2017 +0200
@@ -1006,12 +1006,14 @@
   Run right before a phase change is actually finalized. Any repository change
   will be visible to the hook program. This lets you validate the transaction
   content or change it. Exit status 0 allows the commit to proceed.  A non-zero
-  status will cause the transaction to be rolled back.
+  status will cause the transaction to be rolled back. The hook is called
+  multiple times, once for each revision affected by a phase change.
   The affected node is available in ``$HG_NODE``, the phase in ``$HG_PHASE``
   while the previous ``$HG_OLDPHASE``. In case of new node, ``$HG_OLDPHASE``
   will be empty.  In addition, the reason for the transaction opening will be in
   ``$HG_TXNNAME``, and a unique identifier for the transaction will be in
-  ``HG_TXNID``.
+  ``HG_TXNID``. The hook is also run for newly added revisions. In this case
+  the ``$HG_OLDPHASE`` entry will be empty.
 
 ``txnclose``
   Run after any repository transaction has been committed. At this