[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: How to checkout a partial svn repository?

From: Mark Ryan <m.ryan_at_phion.com>
Date: 2006-04-20 15:10:09 CEST

Hi Kirk

We ran into this a while back and it is a major problem for us in using
subversion. After a bit of rooting around I found some information for a
closely related issue in the issues database
(http://subversion.tigris.org) under issue #695. It's not the origin of
the issue but the comments log provides a suggestion from /Robert
Schiele <mailto:schiele@tigris.org> / for future behaviour would indeed
answer this problem! It looks like the issue has not been updated for
quite a while so I wouldn't expect the desired behaviour to be
implemented any time soon. (Unless there's more information on it
forthcoming??)

As far as workarounds go, the best answer we managed was to arrange the
repository in such a way that you can get everything you need in a
single checkout without having to exclude any subdirectories. The
restructure has proved extremely unpopular with several developers who
are particularly sensitive to any kind of change (But that's OK -
there's lots of things that prove unpopular!)

It also means that if a developer in his/her wisdom decides to add a
subdirectory somewhere within the structure with a zillion files,
everyone checking out the top level suddenly has their checkout times
increased dramatically. This has indeed happened in our environment and
is a source of continuing frustration for everyone!

I saw a couple of other replies suggesting the use of externals. Using
externals are great if you only ever want to work on the trunk (latest)
revision. But, when you come to any kind of branching/tagging, unless
you're careful you end up with your project being tagged correctly but
with externals pointing to 'moving targets'! I have seen several scripts
to manage this but due to the fact that subversion properties cannot be
manipulated directly on URL's, in order to change the external defs, you
need to checkout the whole structure in order to perform a copy
(branch/tag). For us that is simply too slow due to the size of our code
base.

We have a policy now of only using externals that reference tagged
versions of code - that way they remain static and never need to be
changed during tag or branching operation.

This is one of a few issues with Subversion that, if fixed in the near
future, would give it a real boost in its standing amongst the CM
community. It's already a good tool, but it could be a lot better..!

Regards

Mark Ryan.

Kirk Black wrote:

>Hello,
>
>I'm using svn to manage all my project files, including files I want
>available on a website. What I would like to do is to checkout part of a
>svn repository on this website and be able to do a svn update thereafter
>without having any portions I did not explicitly checkout showing up later.
>I've tried manually checking out each sub-directory I want from svn but as
>soon as I issue a svn update at the top level directory, the other
>directories are then included and updated. I've tried manually removing
>write access from the directories I don't want to update but then svn simply
>stops updating everything and complains about a missing file lock.
>
>Here is an example of what I'm wanting to do.
>
>My repository looks like below:
>foo
>foo/project1
>foo/project1/data
>foo/project1/exe
>foo/project1/source_code
>foo/project2
>foo/project2/data
>foo/project2/exe
>foo/project2/source_code
>
>On my website I want to make all data and exe folders available but not the
>source_code directories.
>foo
>foo/project1
>foo/project1/data
>foo/project1/exe
>foo/project2
>foo/project2/data
>foo/project2/exe
>
>Once checked out and excluding all the source_code folders, I would like to
>thereafter change to folder foo on my webserver machine and do a single "svn
>update" and have all the sub-folders update without ever having the
>source_code folders included.
>
>I appreciate any help.
>
>Kirk Black
>Owner / Developer / Administrator
>Family Time! Interactive, L.L.C.
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
>For additional commands, e-mail: users-help@subversion.tigris.org
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Thu Apr 20 15:09:06 2006

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.