On 4 Aug 2013, at 15:31, Felipe Contreras <felipe.contreras@xxxxxxxxx> wrote: > git config --get-regexp '^remote.*.url' is probably more appropriate. > > Either way, I don't see why such a change should be in the same patch. +1 > This is my solution: > > --- a/contrib/remote-helpers/git-remote-hg.py > +++ b/contrib/remote-helpers/git-remote-hg.py > @@ -391,11 +391,22 @@ def get_repo(url, alias): > os.makedirs(dirname) > else: > shared_path = os.path.join(gitdir, 'hg') > - if not os.path.exists(shared_path): > - try: > - hg.clone(myui, {}, url, shared_path, update=False, pull=True) > - except: > - die('Repository error') > + > + # check and upgrade old organization > + hg_path = os.path.join(shared_path, '.hg') > + if os.path.exists(shared_path) and not os.path.exists(hg_path): > + repos = os.listdir(shared_path) > + for x in repos: > + local_hg = os.path.join(shared_path, x, 'clone', '.hg') > + if not os.path.exists(local_hg): > + continue > + shutil.copytree(local_hg, hg_path) > + > + # setup shared repo (if not there) > + try: > + hg.peer(myui, {}, shared_path, create=True) Didn't look this up, this will raise the error below when it exists already? > + except error.RepoError: > + pass > > if not os.path.exists(dirname): > os.makedirs(dirname) > > It should also work in all the cases, but there would not be an extra > unnecessary clone while upgrading, and it doesn't sneak in any other > changes. +1 Seems to be the best fix until now. Cheers, Jörn-- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html