I am considering switching from SVN to a distributed SCM for my personal stuff. I had a look at git and mercurial, but neither really support branching a sub-directory:
Often, I am working on a big private project, and, while working on a sub-project (stored inside the project’s repository), I’d like to share that sub-project with others. So there are actually two problems:
- being able to checkout/branch/clone a sub-directory
- possibility to control access on a per-directory basis
SVN only partially meets my needs with that (it’s possible to checkout a sub-directory directly, for example with
svn co svn://svn.debian.org/svn/pkg-ruby-extras/tools/ruby-pkg-tools). I think that it’s possible to do fine-grained access control
using libapache2-svn, but I haven’t tried yet.
It seems that mercurial can do that, using the forest extension. But you have to convert the specific directory into a repository, with a complex step to keep the history.
Amongst the distributed SCM, is there one that supports that ? (at least the sub-directory branching part)