git-subrepos: revert respects specified location to save .orig files
authorChristian Delahousse <cdelahousse@fb.com>
Tue, 10 Nov 2015 14:29:13 -0800
changeset 26940 91786f20db83
parent 26939 50d2389a2e49
child 26941 454deda24315
git-subrepos: revert respects specified location to save .orig files This patch makes revert in git subrepos save .orig files where the user wants them by using the cmdutil.origpath function.
mercurial/subrepo.py
tests/test-subrepo-git.t
--- a/mercurial/subrepo.py	Tue Nov 10 14:26:19 2015 -0800
+++ b/mercurial/subrepo.py	Tue Nov 10 14:29:13 2015 -0800
@@ -1910,7 +1910,7 @@
             status = self.status(None)
             names = status.modified
             for name in names:
-                bakname = "%s.orig" % name
+                bakname = cmdutil.origpath(self.ui, self._subparent, name)
                 self.ui.note(_('saving current version of %s as %s\n') %
                         (name, bakname))
                 self.wvfs.rename(name, bakname)
--- a/tests/test-subrepo-git.t	Tue Nov 10 14:26:19 2015 -0800
+++ b/tests/test-subrepo-git.t	Tue Nov 10 14:29:13 2015 -0800
@@ -875,6 +875,16 @@
   $ hg status --subrepos
   ? s/barfoo
 
+revert moves orig files to the right place
+  $ echo 'bloop' > s/foobar
+  $ hg revert --all --verbose --config 'ui.origbackuppath=.hg/origbackups'
+  reverting subrepo ../gitroot
+  creating directory: $TESTTMP/tc/.hg/origbackups
+  saving current version of foobar as $TESTTMP/tc/.hg/origbackups/foobar.orig
+  $ ls .hg/origbackups
+  foobar.orig
+  $ rm -rf .hg/origbackups
+
 show file at specific revision
   $ cat > s/foobar << EOF
   > woop    woop