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

Re: [PATCH WIP 0/3] git log --exclude

From
Nguyen Thai Ngoc Duy <pclouds@gmail.com>
Date
Oct 6, 2011, 21:47 UTC
Message-ID
<CACsJy8C9O-dGo=Y6HfQ5iYtsD8SMuiWB8y5ab=C+vT4Z01F+ag@mail.gmail.com>
In-Reply-To
<20111006143441.GA21558@sigill.intra.peff.net>
2011/10/7 Jeff King <peff@peff.net>:
Show 8 quoted lines
> I'm really just a bystander on this topic, and haven't given it too much
> thought. But one stumbling block I see for narrow clone is how narrow
> repositories will interact with object transfer from other repositories.
>
> For example, if I have a narrow git.git that omits Documentation, and I
> do a "git fetch" from a non-narrow repository, then how do we tell the
> non-narrow remote that we don't have blobs in Documentation, and that
> they should not be used as delta bases for any objects that are sent?

Pretty much how shallow cloned repos interacts. In shallow clone we send depth info. In narrow clone, we send width info, in terms of (restricted) pathspec. With pathspec (possibly plus exclude rules but this possibility is getting smaller), I can express "fetch this directory only", or "fetch this directory, but not this subdirectory (because I already have it)".

We can prohibit certain use cases at client side just like shallow clone.
> The current protocol relies on certain repository properties on the
> remote end that narrow clone will violate. I don't see a way around that
> without a protocol extension to communicate the narrowness. What will
> that extension look like?
Something like this
http://thread.gmane.org/gmane.comp.version-control.git/155427/focus=155613
-- 
Duy
Previous: Junio C HamanoNext: Nguyen Thai Ngoc Duy
Message 10 of 12 in “git log --exclude”
  1. 0/3 git log --excludeNguyễn Thái Ngọc Duy, Oct 5, 2011
  2. 1/3 diff-no-index: rename read_directory to avoid conflict from dir.hNguyễn Thái Ngọc Duy, Oct 5, 2011
  3. 2/3 tree-diff: teach it to understand exclude patternsNguyễn Thái Ngọc Duy, Oct 5, 2011
  4. 3/3 log: add --exclude optionNguyễn Thái Ngọc Duy, Oct 5, 2011
  5. Matthieu MoyOct 5, 2011
  6. Nguyen Thai Ngoc DuyOct 5, 2011
  7. Junio C HamanoOct 5, 2011
  8. Jeff KingOct 6, 2011
  9. Junio C HamanoOct 6, 2011
  10. Nguyen Thai Ngoc DuyOct 6, 2011
  11. Nguyen Thai Ngoc DuyOct 7, 2011
  12. Junio C HamanoOct 7, 2011

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.