ProjFS + Copy-on-Write

Open
#96 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
20/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
csharp

Research direction

Start with the ProjFS PrjWriteFileData entry point and the linked ReFS block-cloning documentation. Determine whether block cloning can be used for projected files, and document whether the API supports sharing large binary assets for the described experimental version-control use case.

Written by the indexing model from the issue text.

Description

Microsoft DevDrive supports copy-on-write semantics which is super cool. I'd like combine ProjFS + CoW so that large binary assets can be shared.

Currently the way ProjFS works is you call PrjWriteFileData. What I'd like to do instead is perform a block clone.

Is there any way to do this today? I believe the answer is no. But I wanted to check.

In case it helps, my intended use case is an experimental version control system. I'd like to support monorepos with very large files which are deduplicated via block cloning.

Thanks!

Dominant language
C#
Stars
174
Forks
40
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from microsoft/ProjFS-Managed-API

All issues in microsoft/ProjFS-Managed-API

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.