# hg:
# Emulate hg-git.
# Only hg bookmarks are exported as git branches.
-# Commits are modified to preserve hg information and allow biridectionality.
+# Commits are modified to preserve hg information and allow bidirectionality.
#
NAME_RE = re.compile('^([^<>]+)')
m = { '0100755': 'x', '0120000': 'l' }
return m.get(mode, '')
+def get_config(config):
+ cmd = ['git', 'config', '--get', config]
+ process = subprocess.Popen(cmd, stdout=subprocess.PIPE)
+ output, _ = process.communicate()
+ return output
+
class Marks:
def __init__(self, path):
hg_git_compat = False
track_branches = True
try:
- cmd = ['git', 'config', '--get', 'remote-hg.hg-git-compat']
- if subprocess.check_output(cmd) == 'true\n':
+ if get_config('remote-hg.hg-git-compat') == 'true\n':
hg_git_compat = True
track_branches = False
- cmd = ['git', 'config', '--get', 'remote-hg.track-branches']
- if subprocess.check_output(cmd) == 'false\n':
+ if get_config('remote-hg.track-branches') == 'false\n':
track_branches = False
except subprocess.CalledProcessError:
pass