Re: VFS
Re: VFS
- Subject: Re: VFS
- From: "Finlay Dobbie" <email@hidden>
- Date: Mon, 6 Oct 2008 13:01:02 +0100
On Mon, Oct 6, 2008 at 12:23 PM, Karan, Cem (Civ, ARL/CISD)
<email@hidden> wrote:
> I want to write an interface to my version control system (in this case, Subversion, but it could be anything) that lets me 'mount' different working copies (and different revisions of the same one), in the same way that you can mount a disk image. The idea is that the meta information (.svn, .cvs, whatever) can be fully hidden from the mounted drive. Each modification can be an unnamed revision, with some kind of special tool handling naming particular modifications (or, if I can, I can make it like how CDs/DVDs have a burn button in their toolbar, I haven't fully thought out the interface yet). Tools that don't understand what version control is wouldn't break the system, and using it would be more natural.
If you wish to use Apple's VFS KPI, your best bet is following the
links in that Q&A to the sample code implementations:
http://developer.apple.com/samplecode/EmptyFS/index.html is a very
simple VFS plug-in; its volumes are completely empty (except for the
root directory). The purpose of this sample is to create the minimal
VFS plug-in that builds and runs. You can use EmptyFS to explore VFS
behaviour, or as a template for your own VFS plug-in.
http://developer.apple.com/samplecode/MFSLives/index.html is a sample
VFS plug-in that implements read-only access to the Macintosh File
System (MFS) volume format. MFS is an excellent volume format for
sample code because it's very simple but it allows you to exercise the
code paths associated with Macintosh-specific metadata (specifically,
Finder info, multi-fork files, and volfs).
You can also look at http://www.opensource.apple.com/darwinsource/ and
the webdavfs source.
These are all linked to from that Q&A, so I don't really understand
what you're asking for beyond the resources that have been presented
to you. These are all examples of implementing a VFS plug-in which is
compatible with the latest release of Mac OS X. However, doing so is
tricky and not for the faint of heart.
However, by far and away the easiest approach would be for you to
build on MacFUSE: http://code.google.com/p/macfuse/
-- Finlay
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
- Follow-Ups:
- RE: VFS
- From: "Karan, Cem (Civ, ARL/CISD)" <email@hidden>
References: | |
| >VFS (From: "Karan, Cem (Civ, ARL/CISD)" <email@hidden>) |
| >Re: VFS (From: "Finlay Dobbie" <email@hidden>) |
| >RE: VFS (From: "Karan, Cem (Civ, ARL/CISD)" <email@hidden>) |