# HG changeset patch # User Siddharth Agarwal <sid0@fb.com> # Date 1414547632 25200 # Tue Oct 28 18:53:52 2014 -0700 # Node ID 0db40f60b24b9c67487606f56a1fc22629aaf46c # Parent 8b663b78e2209c2e99921452bcef1082f3566ea0 git_handler.local_heads: return git ref with sha This allows extensions to add other sources of git refs. The returned git ref is currently unused -- the following patch will use it. diff --git a/hggit/git_handler.py b/hggit/git_handler.py --- a/hggit/git_handler.py +++ b/hggit/git_handler.py @@ -287,7 +287,8 @@ new_refs = {} def changed(refs): old_refs.update(refs) - to_push = set(self.local_heads().values() + self.tags.values()) + to_push = set([v[1] for v in self.local_heads().itervalues()] + + self.tags.values()) new_refs.update(self.get_changed_refs(refs, to_push, True)) return refs # always return the same refs to make the send a no-op @@ -911,7 +912,9 @@ def changed(refs): self.ui.status(_("searching for changes\n")) old_refs.update(refs) - to_push = revs or set(self.local_heads().values() + self.tags.values()) + to_push = revs or set( + [v[1] for v in self.local_heads().itervalues()] + + self.tags.values()) return self.get_changed_refs(refs, to_push, force) def genpack(have, want): @@ -1089,7 +1092,7 @@ # Create a local Git branch name for each # Mercurial bookmark. for key in heads: - git_sha = self.map_git_get(heads[key]) + git_sha = self.map_git_get(heads[key][1]) if git_sha: self.git.refs['refs/heads/' + key] = git_sha @@ -1125,8 +1128,8 @@ def local_heads(self): bms = self.repo._bookmarks - return dict((filtered_bm, hex(bms[bm])) for - filtered_bm, bm in self._filter_for_bookmarks(bms)) + return dict((filtered_bm, ('refs/heads/' + filtered_bm, hex(bms[bm]))) + for filtered_bm, bm in self._filter_for_bookmarks(bms)) def import_tags(self, refs): keys = refs.keys()