git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] remote-hg: fix path when cloning with tilde expansion

From
Antoine Pelisse <apelisse@gmail.com>
Date
Aug 9, 2013, 20:09 UTC
Message-ID
<CALWbr2w2JjEr_hYX9ighu_-=iTV6etG=78g4AbKko64EsecxFA@mail.gmail.com>
In-Reply-To
<7veha266nq.fsf@alter.siamese.dyndns.org>
On Fri, Aug 9, 2013 at 8:49 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 15 quoted lines
> Antoine Pelisse <apelisse@gmail.com> writes:
>> On Mon, Aug 5, 2013 at 10:30 PM, Felipe Contreras <felipe.contreras@gmail.com> wrote:
>>> Shouldn't that be the job of the shell? (s/~/$HOME/)
>>
>> I'm not sure what you mean here. Does it mean that I should stop cloning using "~" ?
>
> I think shells do not expand ~ when it appears in a string (e.g. hg::~/there);
> you could work it around with
>
>         git clone hg::$(echo ~/there)
>
> and I suspect that is what Felipe is alluding to.  A tool (like
> remote-hg bridge with this patch) that expands ~ in the middle of a
> string also may be surprising to some people, especially to those
> who know the shell does not.
It looks like mercurial will expand the tilde (it it starts with it):
   hg init \~
will create a $HOME/.hg. (while git init \~ will create ./~).
So when we run:
git clone hg::~/my/repo

Git will remove the "hg::" part, and Mercurial will expand tilde and clone $HOME/my/repo.

So what should we do ? I think we should stick as close as possible to Hg behavior: That is consider that a path starting with tilde is absolute, and not try to fix it by building /home/user/~/repo/path. Of course if we could not depend on "I think Hg works like that", it would be better if we could resolve that by asking Mercurial. I will dig into it.

> By the way, you earlier sent an updated 1/2; is this supposed to be
> 2/2 to conclude the two-patch series?

Those two patches don't interact with each other, but you can of course join them if it makes it easier for you (and I don't think one is going to have to go "faster" than the other anyway).

Previous: Junio C HamanoNext: Junio C Hamano
Message 6 of 20 in “remote-hg: fix path when cloning with tilde expansion”
  1. remote-hg: fix path when cloning with tilde expansionAntoine Pelisse, Aug 5, 2013
  2. Felipe ContrerasAug 5, 2013
  3. Antoine PelisseAug 5, 2013
  4. remote-hg: fix path when cloning with tilde expansionAntoine Pelisse, Aug 9, 2013
  5. Junio C HamanoAug 9, 2013
  6. Antoine PelisseAug 9, 2013
  7. Junio C HamanoAug 9, 2013
  8. Antoine PelisseAug 9, 2013
  9. Junio C HamanoAug 9, 2013
  10. Antoine PelisseAug 9, 2013
  11. Felipe ContrerasAug 9, 2013
  12. Junio C HamanoAug 9, 2013
  13. Felipe ContrerasAug 9, 2013
  14. Junio C HamanoAug 9, 2013
  15. Felipe ContrerasAug 9, 2013
  16. Junio C HamanoAug 10, 2013
  17. Felipe ContrerasAug 10, 2013
  18. Junio C HamanoAug 10, 2013
  19. Felipe ContrerasAug 10, 2013
  20. Antoine PelisseAug 10, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.