diff options
author | Felipe Contreras <felipe.contreras@gmail.com> | 2012-11-04 03:13:37 +0100 |
---|---|---|
committer | Jeff King <peff@peff.net> | 2012-11-04 08:35:21 -0500 |
commit | e30473c185442a9ac137f3841fe2d05e0e5ec81a (patch) | |
tree | c109335cee5ac5ed0fc2814e794b58c90014bd1b /contrib | |
parent | remote-hg: add extra author test (diff) | |
download | tgif-e30473c185442a9ac137f3841fe2d05e0e5ec81a.tar.xz |
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 <felipe.contreras@gmail.com>
Signed-off-by: Jeff King <peff@peff.net>
Diffstat (limited to 'contrib')
-rwxr-xr-x | contrib/remote-helpers/git-remote-hg | 22 |
1 files changed, 14 insertions, 8 deletions
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 |