D5871: revert: always show relative path to .orig backup
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Wed Feb 6 23:57:40 UTC 2019
martinvonz created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
This helps make some future patches easier when I replace origpath()
by another function that works with repo-relative paths (origpath()
works with cwd-relative paths).
Always showing a relative path seems a little more user-friendly and
is more consistent between configured ui.origbackuppath and not. OTOH,
it's annoying if ui.origbackuppath is far outside the repo. This is
just --verbose output, so I don't think it's worth spending much time
on (I've already wasted too many hours on it).
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D5871
AFFECTED FILES
mercurial/cmdutil.py
tests/test-largefiles-misc.t
tests/test-revert.t
CHANGE DETAILS
diff --git a/tests/test-revert.t b/tests/test-revert.t
--- a/tests/test-revert.t
+++ b/tests/test-revert.t
@@ -92,7 +92,7 @@
$ echo z > e
$ hg revert --all -v --config 'ui.origbackuppath=.hg/origbackups'
creating directory: $TESTTMP/repo/.hg/origbackups
- saving current version of e as $TESTTMP/repo/.hg/origbackups/e
+ saving current version of e as .hg/origbackups/e
reverting e
$ rm -rf .hg/origbackups
diff --git a/tests/test-largefiles-misc.t b/tests/test-largefiles-misc.t
--- a/tests/test-largefiles-misc.t
+++ b/tests/test-largefiles-misc.t
@@ -578,7 +578,7 @@
$ echo moremore >> anotherlarge
$ hg revert anotherlarge -v --config 'ui.origbackuppath=.hg/origbackups'
creating directory: $TESTTMP/addrm2/.hg/origbackups/.hglf/sub
- saving current version of ../.hglf/sub/anotherlarge as $TESTTMP/addrm2/.hg/origbackups/.hglf/sub/anotherlarge
+ saving current version of ../.hglf/sub/anotherlarge as ../.hg/origbackups/.hglf/sub/anotherlarge
reverting ../.hglf/sub/anotherlarge
creating directory: $TESTTMP/addrm2/.hg/origbackups/sub
found 90c622cf65cebe75c5842f9136c459333faf392e in store
diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py
--- a/mercurial/cmdutil.py
+++ b/mercurial/cmdutil.py
@@ -3018,8 +3018,9 @@
tobackup.add(abs)
elif (backup <= dobackup or wctx[abs].cmp(ctx[abs])):
bakname = scmutil.origpath(ui, repo, rel)
+ relbakname = os.path.relpath(bakname)
ui.note(_('saving current version of %s as %s\n') %
- (rel, bakname))
+ (rel, relbakname))
if not opts.get('dry_run'):
if interactive:
util.copyfile(target, bakname)
To: martinvonz, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list