[PATCH V2] cmdutil: show diffs in commit message with ui.verbosecommit option

Jordi Gutiérrez Hermoso jordigh at octave.org
Tue Jul 16 15:57:44 CDT 2013


# HG changeset patch
# User Jordi Gutiérrez Hermoso <jordigh at octave.org>
# Date 1373469596 14400
#      Wed Jul 10 11:19:56 2013 -0400
# Node ID ef066d1bb2a746832648e03c021233d0a58b4b5d
# Parent  8667e65a39e117b7b6d9dbaf6f922be97314ee80
cmdutil: show diffs in commit message with ui.verbosecommit option

The following adds an option, ui.verbosecommit, which displays the
entire diff about to be committed in the text editor window, prefixed
with "HG:". This is useful as a final reminder of what's about to be
committed once the commit message is written.

diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py
--- a/mercurial/cmdutil.py
+++ b/mercurial/cmdutil.py
@@ -1838,6 +1838,11 @@
     edittext.extend([_("HG: added %s") % f for f in added])
     edittext.extend([_("HG: changed %s") % f for f in modified])
     edittext.extend([_("HG: removed %s") % f for f in removed])
+    if repo.ui.config("ui","verbosecommit"):
+        edittext.append("HG: ")
+        diff = ctx.diff()
+        edittext.extend([_("HG: %s") % l
+                         for f in diff for l in f.split("\n")])
     if not added and not modified and not removed:
         edittext.append(_("HG: no files changed"))
     edittext.append("")
diff --git a/mercurial/help/config.txt b/mercurial/help/config.txt
--- a/mercurial/help/config.txt
+++ b/mercurial/help/config.txt
@@ -1244,6 +1244,11 @@
 ``verbose``
     Increase the amount of output printed. True or False. Default is False.
 
+``verbosecommit``
+    Put more information prefixed with "HG: " in commit messages when
+    editing them, such as the diff that's about to be committed.
+    Default is False.
+
 
 ``web``
 -------


More information about the Mercurial-devel mailing list