[PATCH 4 of 8] ui: add diff.git to progressive mode

Mathias De Maré mathias.demare at gmail.com
Sat Mar 28 05:51:04 CDT 2015


# HG changeset patch
# User Mathias De Maré <mathias.demare at gmail.com>
# Date 1427229614 -3600
#      Tue Mar 24 21:40:14 2015 +0100
# Node ID 6b6bc41ccff75869e2f760ee595e564a0334060e
# Parent  ea4595977e4e882b7a355e7e7430989cee3ea000
ui: add diff.git to progressive mode

diff --git a/mercurial/ui.py b/mercurial/ui.py
--- a/mercurial/ui.py
+++ b/mercurial/ui.py
@@ -480,6 +480,9 @@
         if not progressive:
             return
 
+        if not self.hasconfig('diff', 'git'):
+            self.setconfig('diff', 'git', 'True')
+
     def plain(self, feature=None):
         '''is plain mode active?
 
diff --git a/tests/test-mv-cp-st-diff.t b/tests/test-mv-cp-st-diff.t
--- a/tests/test-mv-cp-st-diff.t
+++ b/tests/test-mv-cp-st-diff.t
@@ -1666,4 +1666,45 @@
   @@ -0,0 +1,1 @@
   +change
 
+Enabling progressive mode should result in automatic 'diff --git'
+  $ hg mv renamed f
+  $ echo wup >> f
+  $ echo "[ui]" >> $HGRCPATH
+  $ echo "progressive = True" >> $HGRCPATH
+  $ hg diff
+  diff --git a/renamed b/f
+  rename from renamed
+  rename to f
+  --- a/renamed
+  +++ b/f
+  @@ -1,1 +1,2 @@
+   change
+  +wup
+HGPLAIN should remove any progressive mode effects
+  $ HGPLAIN=1 hg diff
+  diff -r 7935fd48a8f9 f
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/f	* (glob)
+  @@ -0,0 +1,2 @@
+  +change
+  +wup
+  diff -r 7935fd48a8f9 renamed
+  --- a/renamed	Thu Jan 01 00:00:00 1970 +0000
+  +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  @@ -1,1 +0,0 @@
+  -change
+Enabling progressive mode and explicitly disabling 'diff ---git' should not show renames.
+  $ hg diff --config diff.git=False
+  diff -r 7935fd48a8f9 f
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/f	* (glob)
+  @@ -0,0 +1,2 @@
+  +change
+  +wup
+  diff -r 7935fd48a8f9 renamed
+  --- a/renamed	Thu Jan 01 00:00:00 1970 +0000
+  +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  @@ -1,1 +0,0 @@
+  -change
+
   $ cd ..


More information about the Mercurial-devel mailing list