Skip to content

Commit

Permalink
remote-hg: store converted URL
Browse files Browse the repository at this point in the history
Mercurial might convert the URL to something more appropriate, like an
absolute path. Lets store that instead of the original URL, which won't
work from a different working directory if it's relative.

Suggested-by: Max Horn <max@quendi.de>
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
  • Loading branch information
felipec committed Nov 24, 2012
1 parent 7d433ee commit 605bad5
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions contrib/remote-helpers/git-remote-hg
Original file line number Diff line number Diff line change
Expand Up @@ -720,6 +720,14 @@ def do_export(parser):
if peer:
parser.repo.push(peer, force=False)

def fix_path(alias, repo, orig_url):
repo_url = util.url(repo.url())
url = util.url(orig_url)
if str(url) == str(repo_url):
return
cmd = ['git', 'config', 'remote.%s.url' % alias, "hg::%s" % repo_url]
subprocess.call(cmd)

def main(args):
global prefix, dirname, branches, bmarks
global marks, blob_marks, parsed_refs
Expand Down Expand Up @@ -766,6 +774,9 @@ def main(args):
repo = get_repo(url, alias)
prefix = 'refs/hg/%s' % alias

if not is_tmp:
fix_path(alias, peer or repo, url)

if not os.path.exists(dirname):
os.makedirs(dirname)

Expand Down

0 comments on commit 605bad5

Please sign in to comment.