Git Virtual File System (GVFS)
Microsoft has developed an open source project called GVFS (Git Virtual File System) that helps with developer productivity when it comes to very large monolithic codebases in Git.
On this page:
GVFS virtualizes the file system underlying Git repositories on developers’ machines, making more efficient use of bandwidth, space and computation by only transferring and working with files that have been accessed.
The Atlassian Marketplace provides an experimental app for Bitbucket Data Center and Server that adds the server-side support needed to serve GVFS-enabled Git clients. It can be installed on any supported server platform and once installed, Bitbucket will handle GVFS protocol requests for any repository without any additional setup, from properly configured Git clients.
For more information about setting up GVFS on the client side, please see the blog post and linked resources from Microsoft. As at October 2017, only Windows client support was available. Sourcetree 2.0 and above for Windows is also GVFS aware when used with a GVFS enabled client.
Like GVFS itself, the experimental app is relatively new, and unsupported. It is an experimental technology preview not intended for production use, though being a distinct code path it is unlikely to introduce side effects for non-GVFS users on a production instance. If you work on large repositories, we’d love for you to take it for a spin and send us your feedback.