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

Re: [PATCH] pathspec: remove check_path_for_gitlink

From
Duy Nguyen <pclouds@gmail.com>
Date
May 7, 2016, 07:16 UTC
Message-ID
<CACsJy8CkJ9UF3y6jgCS9KGArLqdEZRqehu_KABFPKo+P2W4M_g@mail.gmail.com>
In-Reply-To
<CAGZ79kaJYngaZfhx060C06J57aDqPJfdMD8xzK4dW4nvvktMLQ@mail.gmail.com>
On Sat, May 7, 2016 at 2:18 AM, Stefan Beller <sbeller@google.com> wrote:
Show 31 quoted lines
> On Fri, May 6, 2016 at 12:02 PM, Junio C Hamano <gitster@pobox.com> wrote:
>> Stefan Beller <sbeller@google.com> writes:
>>
>>> On Fri, May 6, 2016 at 3:30 AM, Duy Nguyen <pclouds@gmail.com> wrote:
>>>> On Fri, May 6, 2016 at 6:27 AM, Junio C Hamano <gitster@pobox.com> wrote:
>>>>> Stefan Beller <sbeller@google.com> writes:
>>>>>
>>>>>>> I wonder if the patches mentioned have something to do with the "git
>>>>>>> add deep/in/the/tree" that fails to notice deep/in/ is an unrelated
>>>>>>> repository in some way?
>>>>
>>>> The same functionality is added in 8745024 (parse_pathspec: support
>>>> stripping/checking submodule paths - 2013-07-14) so if it didn't fail
>>>> to notice that before 5a76aff1a6 and did after, it's a bug.
>>>
>>> The bug seems to have existed before. However in the bug we are talking
>>> about the nested repo is not a submodule yet.
>>
>> That agrees with Duy's recollection below:
>>
>>>> I vaguely recall this symptom. It has something to do with the index,
>>>> the check we do requires a gitlink in the index, I think. So if the
>>>> gitlink entry is not in the index, our protection line fails.
>>
>> So are we all on the same page that this is a bug now?
>
> It was a bug, but now people in the outside world consider it a feature.
> Search for "Git fake submodules" and you'll find a few users who use this
> technique successfully.
>
> I do not think fixing this bug would do good. So maybe we just let it slip?

I think it's because people do have some use cases for multiple worktrees (typically from different repos) to share the same filesystem portion. We never actually support that. There are a bunch of questions on how these worktrees/repos should interact. Maybe someone will finally add support for that. But this is still a bug, even though nobody has time to fix it yet. So I agree with Junio calling this "undefined behavior", not "feature".

-- 
Duy
Previous: Junio C Hamano
Message 16 of 16 in “pathspec: remove check_path_for_gitlink”
  1. pathspec: remove check_path_for_gitlinkStefan Beller, May 5, 2016
  2. Junio C HamanoMay 5, 2016
  3. Stefan BellerMay 5, 2016
  4. Junio C HamanoMay 5, 2016
  5. Stefan BellerMay 5, 2016
  6. Junio C HamanoMay 5, 2016
  7. Stefan BellerMay 6, 2016
  8. Junio C HamanoMay 6, 2016
  9. Stefan BellerMay 6, 2016
  10. Junio C HamanoMay 6, 2016
  11. Duy NguyenMay 6, 2016
  12. Stefan BellerMay 6, 2016
  13. Junio C HamanoMay 6, 2016
  14. Stefan BellerMay 6, 2016
  15. Junio C HamanoMay 6, 2016
  16. Duy NguyenMay 7, 2016

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.