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

Re: [RFC v1] Add virtual file system settings and hook proc

From
Ben Peart <peartben@gmail.com>
Date
Nov 5, 2018, 20:18 UTC
Message-ID
<79a5103e-1546-f670-13bd-7010ff8571c7@gmail.com>
In-Reply-To
<CACsJy8BHp_m3M8FjzyXuquPq65UiXTxi2goUzP2GECYzXq7T6Q@mail.gmail.com>
On 11/5/2018 10:22 AM, Duy Nguyen wrote:
Show 31 quoted lines
> On Sun, Nov 4, 2018 at 10:01 PM brian m. carlson
> <sandals@crustytoothpaste.net> wrote:
>>
>> On Sun, Nov 04, 2018 at 07:34:01AM +0100, Duy Nguyen wrote:
>>> On Wed, Oct 31, 2018 at 9:53 PM Ben Peart <peartben@gmail.com> wrote:
>>>> It's more than a dynamic sparse-checkout because the same list is also
>>>> used to exclude any file/folder not listed.  That means any file not
>>>> listed won't ever be updated by git (like in 'checkout' for example) so
>>>> 'stale' files could be left in the working directory.  It also means git
>>>> won't find new/untracked files unless they are specifically added to the
>>>> list.
>>>
>>> OK. I'm not at all interested in carrying maintenance burden for some
>>> software behind closed doors. I could see values in having a more
>>> flexible sparse checkout but this now seems like very tightly designed
>>> for GVFS. So unless there's another use case (preferably open source)
>>> for this, I don't think this should be added in git.git.
>>
>> I should point out that VFS for Git is an open-source project and will
>> likely have larger use than just at Microsoft.  There are both Windows
>> and Mac clients and there are plans for a Linux client as well.
>> Ideally, it would work with an unmodified upstream Git, which is (I
>> assume) why Ben is sending this series.
> 
> Ah I didn't know that. Thank you. I'll have to look at this GVFS some time then.
> 
> If we're going to support GVFS though, I think there should be a big
> (RFC perhaps) series that includes everything to at least give an
> overview what the end game looks like. Then it could be split up into
> smaller series.
> 

We've always had the goal of not needing a fork at all and are continually working to bring the list of differences to zero but in the mean time, you can see the entire set of changes we've made here [1].

If you look, most of them are changes we are already in process of submitting to git (ie midx, tracing, etc) or patches we fast tracked from master to our branch (your unpack_trees() optimizations for example).

Most of the others are small tweaks and features for performance or to smooth integration issues. This RFC contains the core changes that were required to enable VFS for Git.

[1] https://github.com/git-for-windows/git/compare/master...Microsoft:gvfs-2.19.1

Previous: Duy NguyenNext: Ben Peart
Message 11 of 21 in “[RFC v1] Add virtual file system settings and hook proc”
  1. Ben PeartOct 30, 2018
  2. Junio C HamanoOct 30, 2018
  3. Ben PeartOct 31, 2018
  4. Junio C HamanoNov 5, 2018
  5. Ben PeartNov 5, 2018
  6. Duy NguyenOct 31, 2018
  7. Ben PeartOct 31, 2018
  8. Duy NguyenNov 4, 2018
  9. brian m. carlsonNov 4, 2018
  10. Duy NguyenNov 5, 2018
  11. Ben PeartNov 5, 2018
  12. Ben PeartNov 5, 2018
  13. Ævar Arnfjörð BjarmasonNov 5, 2018
  14. Duy NguyenNov 5, 2018
  15. Ben PeartNov 5, 2018
  16. Johannes SchindelinNov 5, 2018
  17. teach git to support a virtual (partially populated) work directoryBen Peart, Nov 27, 2018
  18. SZEDER GáborNov 28, 2018
  19. Ben PeartNov 29, 2018
  20. teach git to support a virtual (partially populated) work directoryBen Peart, Dec 13, 2018
  21. Ben PeartJan 28, 2019

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.