Mercurial > hg > hg-git
comparison hggit/__init__.py @ 297:a90fe3e8a8c3
hggit: defend against exceptions when pulling with -r
author | Augie Fackler <durin42@gmail.com> |
---|---|
date | Thu, 25 Mar 2010 20:23:00 -0500 |
parents | 32456f9cb7a4 |
children | 6ad6945b6629 |
comparison
equal
deleted
inserted
replaced
296:32456f9cb7a4 | 297:a90fe3e8a8c3 |
---|---|
53 source = source[:-4] | 53 source = source[:-4] |
54 break | 54 break |
55 return hgdefaultdest(source) | 55 return hgdefaultdest(source) |
56 hg.defaultdest = defaultdest | 56 hg.defaultdest = defaultdest |
57 | 57 |
58 # defend against tracebacks if we specify -r in 'hg pull' | |
59 def safebranchrevs(orig, lrepo, repo, branches, revs): | |
60 revs, co = orig(lrepo, repo, branches, revs) | |
61 if getattr(lrepo, 'changelog', False) and co not in lrepo.changelog: | |
62 co = None | |
63 return revs, co | |
64 extensions.wrapfunction(hg, 'addbranchrevs', safebranchrevs) | |
65 | |
58 def reposetup(ui, repo): | 66 def reposetup(ui, repo): |
59 if not isinstance(repo, gitrepo.gitrepo): | 67 if not isinstance(repo, gitrepo.gitrepo): |
60 klass = hgrepo.generate_repo_subclass(repo.__class__) | 68 klass = hgrepo.generate_repo_subclass(repo.__class__) |
61 repo.__class__ = klass | 69 repo.__class__ = klass |
62 | 70 |