Mercurial > hg
changeset 32928:ac9867519103
unbundle: create transaction for bundle1 unbundling earlier
See earlier patch for motivation.
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Thu, 15 Jun 2017 22:18:21 -0700 |
parents | febd6bfa770d |
children | d11e2343762b |
files | mercurial/commands.py |
diffstat | 1 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/commands.py Thu Jun 15 16:10:53 2017 -0700 +++ b/mercurial/commands.py Thu Jun 15 22:18:21 2017 -0700 @@ -5321,12 +5321,13 @@ _('packed bundles cannot be applied with ' '"hg unbundle"'), hint=_('use "hg debugapplystreamclonebundle"')) + url = 'bundle:' + fname if isinstance(gen, bundle2.unbundle20): with repo.transaction('unbundle') as tr: try: op = bundle2.applybundle(repo, gen, tr, source='unbundle', - url='bundle:' + fname) + url=url) except error.BundleUnknownFeatureError as exc: raise error.Abort( _('%s: unknown bundle feature, %s') % (fname, exc), @@ -5337,7 +5338,9 @@ for r in op.records['changegroup']] modheads = changegroup.combineresults(changes) else: - modheads = gen.apply(repo, 'unbundle', 'bundle:' + fname) + txnname = 'unbundle\n%s' % util.hidepassword(url) + with repo.transaction(txnname): + modheads = gen.apply(repo, 'unbundle', url) return postincoming(ui, repo, modheads, opts.get(r'update'), None, None)