# HG changeset patch # User Christian Delahousse # Date 1447194553 28800 # Node ID 91786f20db83bf5cecdc82ecebf99a597c4335b5 # Parent 50d2389a2e490bf5d1804990b6dc386024926965 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. diff -r 50d2389a2e49 -r 91786f20db83 mercurial/subrepo.py --- 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) diff -r 50d2389a2e49 -r 91786f20db83 tests/test-subrepo-git.t --- 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