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

Re: Handling directories of large files

From: Ryan Schmidt <subversion-2007b_at_ryandesign.com>
Date: 2007-11-07 15:57:17 CET

On Nov 7, 2007, at 05:51, subversion@jelmail.com wrote:

> Hello, I'm after some "best practice" for handling directories of
> large
> files.
>
> I have a repository with a directory that contains tarballs of various
> packages I use. This directory is huge. If I wish to add to this
> directory
> I have to check out the entire directory, add files to the working
> copy and
> check back in. Is there a better way to do this? Typically the
> files here
> are added but never modified.
>
> Similarly, I have a directory containing iso images. This directory
> also
> contains build scripts that make the iso images using stuff I have
> elsewhere in subversion. To change the build scripts I have to
> check out
> the entire directory, make my changes to the build script working
> copy and
> check back in. This can mean checking out gigabytes of data just so
> I can
> change one line of script. Some files here need to be modified, but
> the
> vast majority don't.
>
> My repo looks like:
>
> repo
> iso
> build_script
> readme
> iso_release1.iso
> iso_release2.iso
> iso_release3.iso
> packages
> package1.tar.gz
> package2.tar.gz
> package3.tar.gz
> package4.tar.gz
> ...
>
> Perhaps I am doing this with an incorrect repository structure and I
> misunderstand how svn should be used. Any help and guidance would be
> greatly appreciated.

Usually people don't store generated files in Subversion; they just
store the script that generates the files. But if you really want to
store these generated ISOs, you can do that.

You could separate the scripts from the ISOs this way:

repo
        iso
                readme
                scripts
                        build_script
                images
                        iso_release1.iso
                        iso_release2.iso
                        iso_release3.iso

This way, if you just want to change the script, you can check out
just the scripts directory and not have to check out the rest.
There's also the non-recursive flag to svn checkout which may be
helpful to you.

As for how you upload into these directories without checking out
their contents, you could look into svnput:

http://svn.collab.net/repos/svn/trunk/tools/examples/svnput.c

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed Nov 7 15:57:45 2007

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.