threads / patch / 34527

v2remotes-hg: bugfix for fetching non local remotes

Subject: [PATCH v2] remotes-hg: bugfix for fetching non local remotes

## tl;dr

3 messages between Jul 24, 2013 and Jul 25, 2013. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Joern Hees· Jul 24, 2013, 14:21 UTC · lore

6796d49 introduced a bug by making shared_path == ".git/hg' which will most likely exist already, causing a new remote never to be cloned and subsequently causing hg.share to fail with error msg: "mercurial.error.RepoError: repository .git/hg not found"

Changing shared_path to ".git/hg/.shared" will solve this problem and create a shared local mercurial repository for non local remotes. The initial dot circumvents a name clash problem should a remote be called "shared".

Signed-off-by: Joern Hees <dev@joernhees.de>
Mentored-by: Antoine Pelisse <apelisse@gmail.com>
---
 contrib/remote-helpers/git-remote-hg | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Show changes to contrib/remote-helpers/git-remote-hg +1 −1
diff --git a/contrib/remote-helpers/git-remote-hg b/contrib/remote-helpers/git-remote-hg
index 0194c67..4a7d7a8 100755
--- a/contrib/remote-helpers/git-remote-hg
+++ b/contrib/remote-helpers/git-remote-hg
@@ -390,7 +390,7 @@ def get_repo(url, alias):
         if not os.path.exists(dirname):
             os.makedirs(dirname)
     else:
-        shared_path = os.path.join(gitdir, 'hg')
+        shared_path = os.path.join(gitdir, 'hg', '.share')
         if not os.path.exists(shared_path):
             try:
                 hg.clone(myui, {}, url, shared_path, update=False, pull=True)
-- 
1.8.3.4
Junio C Hamano· Jul 24, 2013, 23:02 UTC · re: Joern Hees · lore

Re: [PATCH v2] remotes-hg: bugfix for fetching non local remotes

Joern Hees <dev@joernhees.de> writes:
Show 6 quoted lines
> 6796d49 introduced a bug by making shared_path == ".git/hg' which
> will most likely exist already, causing a new remote never to be
> cloned and subsequently causing hg.share to fail with error msg:
> "mercurial.error.RepoError: repository .git/hg not found"
>
> Changing shared_path to ".git/hg/.shared" will solve this problem

Here you say "shared" and the code says "share"; which one is preferred (I know either would work, but we would want to be consistent).

I'd vote for "shared", but I do not see a compelling reason to pick one over the other so...?

Show 23 quoted lines
> and create a shared local mercurial repository for non local remotes.
> The initial dot circumvents a name clash problem should a remote be
> called "shared".
>
> Signed-off-by: Joern Hees <dev@joernhees.de>
> Mentored-by: Antoine Pelisse <apelisse@gmail.com>
> ---
>  contrib/remote-helpers/git-remote-hg | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/contrib/remote-helpers/git-remote-hg b/contrib/remote-helpers/git-remote-hg
> index 0194c67..4a7d7a8 100755
> --- a/contrib/remote-helpers/git-remote-hg
> +++ b/contrib/remote-helpers/git-remote-hg
> @@ -390,7 +390,7 @@ def get_repo(url, alias):
>          if not os.path.exists(dirname):
>              os.makedirs(dirname)
>      else:
> -        shared_path = os.path.join(gitdir, 'hg')
> +        shared_path = os.path.join(gitdir, 'hg', '.share')
>          if not os.path.exists(shared_path):
>              try:
>                  hg.clone(myui, {}, url, shared_path, update=False, pull=True)
Jörn Hees· Jul 25, 2013, 00:42 UTC · re: Junio C Hamano · lore

Re: [PATCH v2] remotes-hg: bugfix for fetching non local remotes

On 25 Jul 2013, at 01:02, Junio C Hamano <gitster@pobox.com> wrote:
Show 10 quoted lines
> Joern Hees <dev@joernhees.de> writes:
>> 
>> Changing shared_path to ".git/hg/.shared" will solve this problem
> 
> Here you say "shared" and the code says "share"; which one is
> preferred (I know either would work, but we would want to be
> consistent).
> 
> I'd vote for "shared", but I do not see a compelling reason to pick
> one over the other so…?
ok, v3 coming...

← back to recent threads