From: Felipe Contreras Date: Sun, 4 Nov 2012 02:13:37 +0000 (+0100) Subject: remote-hg: add option to not track branches X-Git-Tag: v1.8.1-rc0~5^2~7 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/e30473c185442a9ac137f3841fe2d05e0e5ec81a?ds=inline;hp=-c remote-hg: add option to not track branches Some people prefer it this way. % git config --global remote-hg.track-branches false Signed-off-by: Felipe Contreras Signed-off-by: Jeff King --- e30473c185442a9ac137f3841fe2d05e0e5ec81a diff --git a/contrib/remote-helpers/git-remote-hg b/contrib/remote-helpers/git-remote-hg index dbe309acfe..a9ae8446fb 100755 --- a/contrib/remote-helpers/git-remote-hg +++ b/contrib/remote-helpers/git-remote-hg @@ -449,14 +449,9 @@ def list_head(repo, cur): g_head = (head, node) def do_list(parser): - global branches, bmarks, mode + global branches, bmarks, mode, track_branches repo = parser.repo - for branch in repo.branchmap(): - heads = repo.branchheads(branch) - if len(heads): - branches[branch] = heads - for bmark, node in bookmarks.listbookmarks(repo).iteritems(): bmarks[bmark] = repo[node] @@ -464,7 +459,12 @@ def do_list(parser): list_head(repo, cur) - if mode != 'hg': + if track_branches: + for branch in repo.branchmap(): + heads = repo.branchheads(branch) + if len(heads): + branches[branch] = heads + for branch in branches: print "? refs/heads/branches/%s" % branch @@ -713,16 +713,22 @@ def main(args): global prefix, dirname, branches, bmarks global marks, blob_marks, parsed_refs global peer, mode, bad_mail, bad_name + global track_branches alias = args[1] url = args[2] peer = None - cmd = ['git', 'config', '--get', 'remote-hg.hg-git-compat'] hg_git_compat = False + track_branches = True try: + cmd = ['git', 'config', '--get', 'remote-hg.hg-git-compat'] if subprocess.check_output(cmd) == 'true\n': hg_git_compat = True + track_branches = False + cmd = ['git', 'config', '--get', 'remote-hg.track-branches'] + if subprocess.check_output(cmd) == 'false\n': + track_branches = False except subprocess.CalledProcessError: pass