Need for advice on effective work with SVN.
We have 20 svn repositories sized from 200Mb to 1Gb
and containing
about 10000-20000 files each (mainly graphics and
texts).
All members of developer and artist teams should have
access to any
of them. The problem is scarce disk space on
workstations. Therefore,
there is no possibility to checkout all the
repositories once and delete working copies never.
Full checkout of one repository takes
about 30-50 min. Which is unacceptable especially
taking into account
that often changes that need to be done in repository
are relatively
small. What we need is a partial checkout.
We tried to redesign directory layout for repositories
in order
to do checkouts not from the root of the repository.
But it appeared
impossible to make such a directory structure to
checkout necessary
data in one call.
Next we tried to use svn:externals. We created a
number of empty
folders in the repository each one corresponding to
one of common
checkout scenarios. The property of each folder
contained a number
of svn:external statements. When one checkouts
starting from this
folder svn client creates directory structure defined
by svn:external.
That is greatly decreased checkout time. But another
problem appeared.
That is non atomic commits on disjoint directories
(created with
svn:external). In order to commit changes one needs
issue one commit
command for each svn:external. If some of these
commits fails and
others do not you will get your project into
inconsistent state.
We access our repositories through WebDav. And it
seems that module
mod_authz_svn does exactly partial checkouts. All
checkout requests
are validated against per-directory access rules
defined in text file.
Only allowed directories streamed to the client. If
access to a
directory is denied then mod_authz_svn silently drops
request. If
mod_authz_svn could check request also against some
filter rules
and those rules can be edited by users remotely is
would solve the
problem of partial checkouts. Sure, filter rules
should be placed in
different file not in access rule's file. And user
should be allowed
to edit only personal filter rules not others. May be
proposed
extension to mod_authz_svn exists. Or may be exists
svn client that can such filtering before checkout
request reaches the server. Please advise if it is.
Best regards,
Igor Chub
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Fri Oct 29 15:47:35 2004