[PATCH 2 of 3] rollback: add dry-run argument, emit transaction description
Henrik Stuart
hg at hstuart.dk
Sat Apr 10 01:14:12 CDT 2010
On 10-04-2010 00:33, Steve Borho wrote:
> # HG changeset patch
> # User Steve Borho <steve at borho.org>
> # Date 1270851817 18000
> # Node ID a886b3aa478a0c9b6b4b57356cd66d4aa0be1378
> # Parent b4e5330e8a450e659aeae5de3f4cbd0783056835
> rollback: add dry-run argument, emit transaction description
>
> diff -r b4e5330e8a45 -r a886b3aa478a mercurial/commands.py
> --- a/mercurial/commands.py Fri Apr 09 17:23:35 2010 -0500
> +++ b/mercurial/commands.py Fri Apr 09 17:23:37 2010 -0500
> @@ -2854,7 +2854,7 @@
> finally:
> wlock.release()
>
> -def rollback(ui, repo):
> +def rollback(ui, repo, **opts):
> """roll back the last transaction
>
> This command should be used with care. There is only one level of
> @@ -2881,7 +2881,7 @@
> repository; for example an in-progress pull from the repository
> may fail if a rollback is performed.
> """
> - repo.rollback()
> + repo.rollback(opts.get('dry_run'))
>
> def root(ui, repo):
> """print the root (top) of the current working directory
> @@ -3821,7 +3821,7 @@
> ('', 'no-backup', None, _('do not save backup copies of files')),
> ] + walkopts + dryrunopts,
> _('[OPTION]... [-r REV] [NAME]...')),
> - "rollback": (rollback, []),
> + "rollback": (rollback, dryrunopts),
> "root": (root, []),
> "^serve":
> (serve,
> diff -r b4e5330e8a45 -r a886b3aa478a mercurial/localrepo.py
> --- a/mercurial/localrepo.py Fri Apr 09 17:23:35 2010 -0500
> +++ b/mercurial/localrepo.py Fri Apr 09 17:23:37 2010 -0500
> @@ -599,13 +599,21 @@
> finally:
> lock.release()
>
> - def rollback(self):
> + def rollback(self, dryrun=False):
> wlock = lock = None
> try:
> wlock = self.wlock()
> lock = self.lock()
> if os.path.exists(self.sjoin("undo")):
> - self.ui.status(_("rolling back last transaction\n"))
> + try:
> + contents = self.opener("undo.desc", "r").read()
> + rev, name = contents.split(',',1)
> + desc = "rolling back %s to revision %s\n" % (name, rev)
> + except (IOError, IndexError):
> + desc = _("rolling back unknown transaction\n")
> + self.ui.status(desc)
> + if dryrun:
> + return
Is it on purpose that the first desc line isn't marked translatable?
--
Kind regards,
Henrik Stuart
More information about the Mercurial-devel
mailing list