Skip to content

Add Readme.md for the virtualization states of a file#1657

Merged
kewillford merged 1 commit intomicrosoft:masterfrom
kewillford:file-lifecycle-doc
Apr 20, 2020
Merged

Add Readme.md for the virtualization states of a file#1657
kewillford merged 1 commit intomicrosoft:masterfrom
kewillford:file-lifecycle-doc

Conversation

@kewillford
Copy link
Member

This is an initial document for how the virtualization works on the Windows side. There is still a lot of scenarios that are not covered in this document but it is a good starting point I hope.

Copy link
Member

@jrbriggs jrbriggs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a great high-level overview. Just a couple of suggestions.

1. ProjFS remove the reparse point so file is a NTFS file.
2. ProjFS calls `OnNotifyFilePreConvertToFull`.
3. VFSForGit if path is projected
1. Adds path to the modified paths so git will keep it up to date.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding to the modified path database happens regardless of whether the path is projected, yeah?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope there is a check to make sure it is in the projection. The reason is that the PreConvertToFull "should" only be called for files that are in the projection. If it was for some other file, that file would have been added to the modified paths via the OnNotifyNewFileCreated

@kewillford kewillford merged commit c8ccc6e into microsoft:master Apr 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants