Index: mercurial/cmdutil.py =================================================================== --- mercurial/cmdutil.py +++ mercurial/cmdutil.py @@ -2545,6 +2545,10 @@ pureextra = extra.copy() extra['amend_source'] = old.hex() + updatetime = ui.configbool('rewrite','updatetimestamp') + if updatetime==True: + date = dateutil.makedate() + new = context.memctx(repo, parents=[base.node(), old.p2().node()], text=message, Index: mercurial/configitems.py =================================================================== --- mercurial/configitems.py +++ mercurial/configitems.py @@ -961,6 +961,9 @@ coreconfigitem('push', 'pushvars.server', default=False, ) +coreconfigitem('rewrite', 'updatetimestamp', + default=False, +) coreconfigitem('storage', 'new-repo-backend', default='revlogv1', ) Index: tests/test-amend.t =================================================================== --- tests/test-amend.t +++ tests/test-amend.t @@ -365,3 +365,41 @@ $ hg amend #endif + +# When updatetimestamp is False + +$ hg amend --date '1997-1-1 0:1' +$ hg log --limit 2 +changeset: 40473:c07936668d6f +branch: stable +bookmark: @ +tag: tip +parent: 40406:7b48c616431d +user: Taapas Agrawal +date: Wed Jan 01 00:01:00 1997 +0530 +summary: amend:Added current time update config option(issue5828) + +changeset: 40472:03f7d0822ec1 +branch: stable +user: Yuya Nishihara +date: Tue Dec 11 22:34:07 2018 +0900 +summary: worker: do not swallow exception occurred in main process + +# When updatetimestamp is True + +$ hg amend --config rewrite.updatetimestamp=True +$ hg log --limit 2 +changeset: 40473:e64479cbaf37 +branch: stable +bookmark: @ +tag: tip +parent: 40406:7b48c616431d +user: Taapas Agrawal +date: Wed Dec 26 19:11:08 2018 +0530 +summary: amend:Added current time update config option(issue5828) + +changeset: 40472:03f7d0822ec1 +branch: stable +user: Yuya Nishihara +date: Tue Dec 11 22:34:07 2018 +0900 +summary: worker: do not swallow exception occurred in main process