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

Re: Bug report - sparse-checkout ignores prefix when run in subdirectories

From
Elijah Newren <newren@gmail.com>
Date
Jan 6, 2022, 00:08 UTC
Message-ID
<CABPp-BFfuDMQXCZg_5YXQLaPtc9nyrJaq8J6VEDVsaiEMeeZMA@mail.gmail.com>
In-Reply-To
<xmqqbl0pg3s7.fsf@gitster.g>
On Wed, Jan 5, 2022 at 3:29 PM Junio C Hamano <gitster@pobox.com> wrote:
Show 18 quoted lines
>
> Elijah Newren <newren@gmail.com> writes:
>
> > So, should "**.py" go directly into the sparse-checkout file as-is, or
> > be translated to "my/current/subdir/**.py" first?
> >
> > Maybe translating is always fine, or maybe we want to throw an error
> > when: (not using cone mode and prefix is non-empty and any patterns
> > are provided).
> >
> > Thoughts?
>
> Perhaps allow things like ":(glob,icase,top)frotz" to be passed and
> treating them as pathspec is the most sensible way to go outside the
> cone mode?  As far as I understand, the cone mode is a strict subset
> that is straight-jacketed into "no patterns allowed, just concrete
> directory names and nothing else" for simplicity, so it is perfectly
> OK for these two to be taking different things.

Are you possibly confusing pathspecs with gitignore patterns here? (Or am I?) Or are you suggesting that sparse-checkout be modified to accept either gitignore-style files or pathspecs and handle both?

I have never liked that gitignore-style patterns were used for sparse-checkout, but it has always seemed a bit too late to change it. Ever since Stolee introduced cone-mode, my preferred strategy for fixing the gitignore-style patterns problem, assuming we are allowed to do so, is to deprecate if not kill non-cone mode. (And in the meantime, I'm just doing due diligence when I mention non-cone mode in my reviews.)

Previous: Junio C HamanoNext: Junio C Hamano
Message 5 of 10 in “Bug report - sparse-checkout ignores prefix when run in subdirectories”
  1. Lessley DenningtonJan 5, 2022
  2. Junio C HamanoJan 5, 2022
  3. Elijah NewrenJan 5, 2022
  4. Junio C HamanoJan 5, 2022
  5. Elijah NewrenJan 6, 2022
  6. Junio C HamanoJan 6, 2022
  7. Elijah NewrenJan 6, 2022
  8. Junio C HamanoJan 6, 2022
  9. Derrick StoleeJan 27, 2022
  10. Elijah NewrenJan 27, 2022

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.