On Tue, Feb 28, 2012 at 6:35 AM, Helmut Zeisel <hz2...@gmx.at> wrote:

> > Datum: Tue, 28 Feb 2012 11:47:43 +0100
> > Von: Stephen Butler <sbut...@elego.de>
>
> Thank you for the quick answer.
>
> > But it also has disadvantages:
> >
> > - Runaway repository growth.  Object files and .jar files don't compress
> > as well as text.  If you bust a hard limit for your repository disk
> space,
> > your IT service provider might force you to pay a drastic penalty.
>
> This is what I am afraid of; see also below ("representation-sharing")
>
This would be alleviated by the ability to "obliterate" material, which is
a longstanding feature request but has proven resistent. It seems to go
against the underlying philosophies, as well as being quite tricky to do.

Binaries don't store well, and svn "delete" doesn't really eliminate bulky
material, it just hides it. With this in mind, you might benefit from using
a clean "tags" structure, or a structure that actually dumps and loads tags
into a new source repo and builds and stores the binaries *there*, to
separate them from your main repository. This is beyond the scope of most
normal layouts, but could be invaluable for a regression testing structure
where you do need to be able to record altered binaries. By fragmenting
them from the main code line, you lose the ability to merge code changes
back to the main code lines, but for preserving reference binaries in a way
that can be used by svn:externals, it might be invaluable.




> > - Slower checkouts, updates, and merges due to working copy size
>
> To prevent this, we can make a suitable seperation of binaries and sources
> in the directory tree.
>
> > Also, you'll miss the features of language-specific dep-mgt tools, which
> > have a lot of sanity checks built in.  A few examples:
> >
> >   Java:  Maven
> >   Python:  virtualenv + pip
> >   Ruby:  bundler + gem
>
> We use C++.
>
> > > How good does subversion make diffs of object code?
> >
> > By default, 'svn diff' skips binary files.  You can customize it to use
> > another
> > program to display diffs for, say, "*.o" file.
>
> This we do not need.
>
> > There's a quick summary of binary-file handling here:
> >
> >   http://svnbook.red-bean.com/en/1.7/svn.forcvs.binary-and-trans.html
> >
> > On the server side, Subversion stores files using a binary diff
> algorithm,
> > and has a "representation-sharing" feature for avoiding redundant data
> > storage.
>
> Acutually this "representation-sharing" was my question. How good does it
> work for compiled C++ code? How much does the repository typically grow?
>
> > > What better options for sharing versions of object fils are available?
> >
> > That depends on your programming language.
>
> C++
>
> Helmut
> --
> NEU: FreePhone 3-fach-Flat mit kostenlosem Smartphone!
> Jetzt informieren: http://mobile.1und1.de/?ac=OM.PW.PW003K20328T7073a
>

Reply via email to