We're are paranoid about data privacy and IP protection, but we understand that some users prefer to isolate the source code of their application so that Amanuens does not have access to it, but only to resource files.
The idea is to isolate resource files so Amanuens can access only them while being completely oblivious in regard to the rest of the source code.
Subversion
Subversion supports the
svn:externals extension. You should isolate all of your resource files, store them in an external repository and remove them from the main one. Then you can hook the external repository to the main one so that the directory structure is identical to the one you had before and
svn update and
svn commit work seamlessly. You then give Amanuens access to only the external repository.
Warning: tagging, branching and merging must be done explicitly on the external repository!
Mercurial
Mercurial supports
Subrepositories. You should isolate all of your resource files, store them in a repository and remove them from the main one. Then you can hook the new repository up to the main one as a subrepository so that the directory structure is identical to the one you had before and
hg pull,
hg update,
hg commit and
hg push work seamlessly. You then give Amanuens access to only the subrepository.
Warning: tagging, branching and merging must be done explicitly on the subrepository!
Git
Git supports
Submodules, which are somewhat similar to Mercurial's Subrepositores described above, although they are a bit more complex to setup.
Microsoft Team Foundation Server
As of this writing, TFS 2008 and 2010 do not support any kind of subrepository or submodule structure.