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

Re: [PATCH 2/7] submodule foreach: correct path computation in recursive submodules

From
Stefan Beller <sbeller@google.com>
Date
Mar 29, 2016, 19:26 UTC
Message-ID
<CAGZ79kbaSNt9UViQQ2ro48Dqhe3c-k+CDvfppjb3Y=nOmnJs4A@mail.gmail.com>
In-Reply-To
<CAGZ79ka5_C0HcWGyYThT7O2ts-B1dTkBWEt1MUsbEN-AciE15g@mail.gmail.com>
On Tue, Mar 29, 2016 at 12:21 PM, Stefan Beller <sbeller@google.com> wrote:
Show 31 quoted lines
> On Tue, Mar 29, 2016 at 12:00 PM, Junio C Hamano <gitster@pobox.com> wrote:
>> Junio C Hamano <gitster@pobox.com> writes:
>>
>>> Stefan Beller <sbeller@google.com> writes:
>>>
>>>> The test which is fixed by this patch would report
>>>>     Entering 'nested1/nested2/../nested3'
>>>> instead of the expected
>>>>     Entering '../nested1/nested2/nested3'
>>>>
>>>> because the prefix is put unconditionally in front and after that a
>>>> computed display path with is affected by `wt_prefix`. This is wrong as
>>>> any relative path computation would need to be at the front. By emptying
>>>> the `wt_prefix` in recursive submodules and adding the information of any
>>>> relative path into the `prefix` this is fixed.
>>>>
>>>> Signed-off-by: Stefan Beller <sbeller@google.com>
>>>> ---
>>>
>>> Nicely explained and executed.
>>
>> Interestingly, this breakage, as 1/7 shows, only affects the
>> "Entering $there" message--I somehow expected from reading the
>> description above that the command given to "foreach" is run
>> in a wrong submodule directory, but there is no such bug that
>> is fixed by this change, as far as "foreach" is concerned.
>
> foreach is a special beast as it is the only submodule command that
> ignores the current directory, i.e.
>     cd repo/plugins && git submodule foreach ...
> also affects submodules in repo/other-submodules.
I missspoke.
It actually respects the sub directory, but no further path spec. :(
Previous: Stefan BellerNext: Stefan Beller
Message 7 of 17 in “Fix path bugs in submodule commands executed from sub dir [WAS: submodule--helper clone: lose the extra prefix option]”
  1. 0/7 Fix path bugs in submodule commands executed from sub dir [WAS: submodule--helper clone: lose the extra prefix option]Stefan Beller, Mar 28, 2016
  2. 1/7 submodule foreach: test path handling in recursive submodulesStefan Beller, Mar 28, 2016
  3. 2/7 submodule foreach: correct path computation in recursive submodulesStefan Beller, Mar 28, 2016
  4. Junio C HamanoMar 29, 2016
  5. Junio C HamanoMar 29, 2016
  6. Stefan BellerMar 29, 2016
  7. Stefan BellerMar 29, 2016
  8. 3/7 submodule update --init: test path handling in recursive submodulesStefan Beller, Mar 28, 2016
  9. Junio C HamanoMar 29, 2016
  10. 4/7 submodule update --init: correct path handling in recursive submodulesStefan Beller, Mar 28, 2016
  11. Junio C HamanoMar 29, 2016
  12. Junio C HamanoMar 29, 2016
  13. Stefan BellerMar 29, 2016
  14. 5/7 t7407: make expectation as clear as possibleStefan Beller, Mar 28, 2016
  15. Junio C HamanoMar 29, 2016
  16. 6/7 submodule status: test path handling in recursive submodulesStefan Beller, Mar 28, 2016
  17. 7/7 submodule status: fix path handling in recursive submodulesStefan Beller, Mar 28, 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.