From 724f82e27e4995148788085c296c0a1d6e7012ef Mon Sep 17 00:00:00 2001 From: Sylvain Th?nault Date: Mon, 10 Jan 2011 15:01:57 +0100 Subject: [mercurial] make incoming function works with non-local repository --- hg.py | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'hg.py') diff --git a/hg.py b/hg.py index 0538a38..6a115bc 100644 --- a/hg.py +++ b/hg.py @@ -107,6 +107,17 @@ def incoming(wdrepo, masterrepo): revs, checkout = hg.addbranchrevs(wdrepo, masterrepo, ('', []), None) common, incoming, rheads = discovery.findcommonincoming( wdrepo, masterrepo, heads=revs) + if masterrepo.local(): + from mercurial import bundlerepo + if revs is None and masterrepo.capable('changegroupsubset'): + revs = rheads + if revs is None: + cg = masterrepo.changegroup(incoming, "incoming") + else: + cg = masterrepo.changegroupsubset(incoming, revs, 'incoming') + fname = changegroup.writebundle(cg, None, "HG10UN") + # use the created uncompressed bundlerepo + masterrepo = bundlerepo.bundlerepository(ui, repo.root, fname) return masterrepo.changelog.nodesbetween(incoming, revs)[0] def outgoing(wdrepo, masterrepo): -- cgit v1.2.1