Browse Source

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>
maint
Felipe Contreras 12 years ago committed by Jeff King
parent
commit
e30473c185
  1. 22
      contrib/remote-helpers/git-remote-hg

22
contrib/remote-helpers/git-remote-hg

@ -449,14 +449,9 @@ def list_head(repo, cur): @@ -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): @@ -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): @@ -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


Loading…
Cancel
Save