-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use GVFS Helper transport instead of read object hook #122
Conversation
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
After @jeffhostetler merges microsoft/git#191, I'll generate a In the meantime, the rest is available for review. cc/ @wilbaker, @jrbriggs, @kewillford |
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just some minor comments and questions, overall looking good!
Signed-off-by: Derrick Stolee <stolee@gmail.com>
Signed-off-by: Derrick Stolee <stolee@gmail.com>
@@ -36,6 +36,7 @@ public static class GitConfig | |||
public const string ScalarTelemetryPipe = GitConfig.ScalarPrefix + "telemetry-pipe"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wondering if we should have a comment on the "gvfs.cache-server" and "gvfs.sharedCache" stating that we intended/need to leave the config prefix as "gvfs" and that it wasn't an oversight during the conversion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Interesting... probably not? I did a pretty thorough find-and-replace, so we should assume from now on that every "gvfs" in the codebase is intended to be there.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that we intended/need to leave the config prefix as "gvfs"
Why do we need to use "gvfs" for the new settings? Is the long term plan to remove the read-object hook in GVFS as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's because it is related to the "gvfs" protocol (the endpoints have "gvfs" in the name).
There is a possibility that we can move VFS for Git onto the gvfs-helper, too.
Resolves #164. Rename `PostFetchStep` to `CommitGraphStep` because it only writes the commit-graph files. Convert the step to use the `--reachable` option instead of `--stdin-packs`. This helps in multiple ways: 1. We don't need to communicate a list of downloaded packs. 2. It's faster to start from refs than scanning packs. 3. This will work on vanilla Git repos. 4. We can now run the commit-graph step in the background at a standard cadence instead of running it after a prefetch. Cleans up some messages that are no longer useful, including the download-object request that was made irrelevant in #122.
See microsoft/git#191 for the Git code regarding the GVFS transport layer. This can work in tandem with the read-object hook, but it should make the read-object hook irrelevant.
Delete all references to the read-object hook in the product code. This unblocks Finish conversion to .NET Core #4 and the [Mount Removal] tasks [Mount Removal] Remove disk layout upgrade code #15, [Mount Removal] Delete Scalar.Mount.* projects #132, [Mount Removal] Remove GitObjectsRoot and LocalCacheRoot from RepoMetadata.dat and switch to 'gvfs.sharedcache' #133, [Mount Removal] Remove shared cache mapping file #135, [Mount Removal] Improve the layout of files owned by Scalar.Service and audit their ACLs #136, and possible others.
Delete the Sparse Verb in favor of
git sparse-checkout set
.Delete the
BlobPrefetcher
and all references to--files
or--folders
prefetching.Resolves #6, #7, #36.