changeset 22249:f5ff18f65b73

commit: change "editform" to distinguish merge commits from other (--amend) "editform" argument for "getcommiteditor" is decided according to the format below: COMMAND[.ROUTE] - COMMAND: name of command - ROUTE: name of route, if there are two or more routes in COMMAND This patch uses "amend.normal" and "amend.merge" as ROUTE of "editform" instead of "amend", to distinguish merge commits from other in "hg commit --amend" case.
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Sat, 16 Aug 2014 10:43:59 +0900
parents 75618a223e18
children f3200bf460a8
files mercurial/cmdutil.py mercurial/help/config.txt tests/test-commit-amend.t
diffstat 3 files changed, 11 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/cmdutil.py	Sat Aug 16 10:43:59 2014 +0900
+++ b/mercurial/cmdutil.py	Sat Aug 16 10:43:59 2014 +0900
@@ -2133,7 +2133,7 @@
 
                 user = opts.get('user') or old.user()
                 date = opts.get('date') or old.date()
-            editform = 'commit.amend'
+            editform = mergeeditform(old, 'commit.amend')
             editor = getcommiteditor(editform=editform, **opts)
             if not message:
                 editor = getcommiteditor(edit=True, editform=editform)
--- a/mercurial/help/config.txt	Sat Aug 16 10:43:59 2014 +0900
+++ b/mercurial/help/config.txt	Sat Aug 16 10:43:59 2014 +0900
@@ -394,7 +394,8 @@
 messages for each actions.
 
 - ``changeset.backout`` for :hg:`backout`
-- ``changeset.commit.amend`` for :hg:`commit --amend`
+- ``changeset.commit.amend.merge`` for :hg:`commit --amend` on merges
+- ``changeset.commit.amend.normal`` for :hg:`commit --amend` on other
 - ``changeset.commit.normal.merge`` for :hg:`commit` on merges
 - ``changeset.commit.normal.normal`` for :hg:`commit` on other
 - ``changeset.fetch`` for :hg:`fetch` (impling merge commit)
--- a/tests/test-commit-amend.t	Sat Aug 16 10:43:59 2014 +0900
+++ b/tests/test-commit-amend.t	Sat Aug 16 10:43:59 2014 +0900
@@ -145,7 +145,12 @@
 
 Test -u/-d:
 
-  $ hg ci --amend -u foo -d '1 0'
+  $ cat > .hg/checkeditform.sh <<EOF
+  > env | grep HGEDITFORM
+  > true
+  > EOF
+  $ HGEDITOR="sh .hg/checkeditform.sh" hg ci --amend -u foo -d '1 0'
+  HGEDITFORM=commit.amend.normal
   saved backup bundle to $TESTTMP/.hg/strip-backup/1cd866679df8-amend-backup.hg (glob)
   $ echo a >> a
   $ hg ci --amend -u foo -d '1 0'
@@ -619,7 +624,8 @@
   zz renamed from z:69a1b67522704ec122181c0890bd16e9d3e7516a
   $ hg debugrename cc
   cc not renamed
-  $ hg ci --amend -m 'merge bar (amend message)'
+  $ HGEDITOR="sh .hg/checkeditform.sh" hg ci --amend -m 'merge bar (amend message)' --edit
+  HGEDITFORM=commit.amend.merge
   $ hg log --config diff.git=1 -pr .
   changeset:   24:832b50f2c271
   tag:         tip