diff --git a/hgext/remotenames.py b/hgext/remotenames.py --- a/hgext/remotenames.py +++ b/hgext/remotenames.py @@ -32,6 +32,8 @@ bin, ) from mercurial import ( + bookmarks, + extensions, logexchange, namespaces, pycompat, @@ -228,6 +230,24 @@ self._nodetohoists.setdefault(node[0], []).append(name) return self._nodetohoists +def wrapprintbookmarks(orig, ui, repo, bmarks, **opts): + if 'remotebookmarks' not in repo.names: + return + ns = repo.names['remotebookmarks'] + + for name in ns.listnames(repo): + nodes = ns.nodes(repo, name) + if not nodes: + continue + node = nodes[0] + + bmarks[name] = (node, ' ', '') + + return orig(ui, repo, bmarks, **opts) + +def extsetup(ui): + extensions.wrapfunction(bookmarks, '_printbookmarks', wrapprintbookmarks) + def reposetup(ui, repo): if not repo.local(): return diff --git a/tests/test-logexchange.t b/tests/test-logexchange.t --- a/tests/test-logexchange.t +++ b/tests/test-logexchange.t @@ -327,3 +327,9 @@ date: Thu Jan 01 00:00:00 1970 +0000 summary: added bar + $ hg bookmarks + $TESTTMP/server2/bar 6:87d6d6676308 + $TESTTMP/server2/foo 3:62615734edd5 + default/bar 6:87d6d6676308 + default/foo 3:62615734edd5 + * foo 8:3e1487808078