From: Felipe Contreras Date: Sun, 4 Nov 2012 02:13:31 +0000 (+0100) Subject: remote-hg: fake bookmark when there's none X-Git-Tag: v1.8.1-rc0~5^2~13 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=46cc3adb60f45273dcb0f9179d20bffe1f77f4ff;p=git remote-hg: fake bookmark when there's none Or at least no current bookmark. Signed-off-by: Felipe Contreras Signed-off-by: Jeff King --- diff --git a/contrib/remote-helpers/git-remote-hg b/contrib/remote-helpers/git-remote-hg index 9db4b7e59c..dbe309acfe 100755 --- a/contrib/remote-helpers/git-remote-hg +++ b/contrib/remote-helpers/git-remote-hg @@ -26,7 +26,7 @@ import urllib # git: # Sensible defaults for git. # hg bookmarks are exported as git branches, hg branches are prefixed -# with 'branches/'. +# with 'branches/', HEAD is a special case. # # hg: # Emulate hg-git. @@ -430,12 +430,21 @@ def get_branch_tip(repo, branch): return heads[0] def list_head(repo, cur): - global g_head + global g_head, bmarks head = bookmarks.readcurrent(repo) - if not head: - return - node = repo[head] + if head: + node = repo[head] + else: + # fake bookmark from current branch + head = cur + node = repo['.'] + if not node: + return + if head == 'default': + head = 'master' + bmarks[head] = node + print "@refs/heads/%s HEAD" % head g_head = (head, node)