amend: support "history-editing-backup" config option
Now, amend is in the list of those history editing commands
which support `history-editing-backup` config option.
If you don't want to store any backup then just use this config.
[ui]
hisotry-editing-backup = False
Current status of list of history editing commands which support
this config:
1. histedit
2. rebase
3. amend
Differential Revision: https://phab.mercurial-scm.org/D3968
--- a/mercurial/cmdutil.py Fri Aug 03 00:10:52 2018 +0530
+++ b/mercurial/cmdutil.py Tue Jul 10 20:23:55 2018 +0530
@@ -2556,8 +2556,10 @@
obsmetadata = None
if opts.get('note'):
obsmetadata = {'note': encoding.fromlocal(opts['note'])}
+ backup = ui.configbool('ui', 'history-editing-backup')
scmutil.cleanupnodes(repo, mapping, 'amend', metadata=obsmetadata,
- fixphase=True, targetphase=commitphase)
+ fixphase=True, targetphase=commitphase,
+ backup=backup)
# Fixing the dirstate because localrepo.commitctx does not update
# it. This is rather convenient because we did not need to update
--- a/tests/test-amend.t Fri Aug 03 00:10:52 2018 +0530
+++ b/tests/test-amend.t Tue Jul 10 20:23:55 2018 +0530
@@ -331,3 +331,37 @@
? missing_content2_content2-untracked
? missing_content2_content3-untracked
? missing_missing_content3-untracked
+
+==========================================
+Test history-editing-backup config option|
+==========================================
+ $ hg init $TESTTMP/repo4
+ $ cd $TESTTMP/repo4
+ $ echo a>a
+ $ hg ci -Aqma
+ $ echo oops>b
+ $ hg ci -Aqm "b"
+ $ echo partiallyfixed > b
+
+#if obsstore-off
+ $ hg amend
+ saved backup bundle to $TESTTMP/repo4/.hg/strip-backup/95e899acf2ce-f11cb050-amend.hg
+When history-editing-backup config option is set:
+ $ cat << EOF >> $HGRCPATH
+ > [ui]
+ > history-editing-backup = False
+ > EOF
+ $ echo fixed > b
+ $ hg amend
+
+#else
+ $ hg amend
+When history-editing-backup config option is set:
+ $ cat << EOF >> $HGRCPATH
+ > [ui]
+ > history-editing-backup = False
+ > EOF
+ $ echo fixed > b
+ $ hg amend
+
+#endif