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

Re: Pruning out old revisions?

From: Ryan Schmidt <subversion-2008c_at_ryandesign.com>
Date: Fri, 3 Oct 2008 05:11:51 -0500

On Oct 2, 2008, at 11:03 PM, David Weintraub wrote:

> On 10/2/08, Ryan Schmidt wrote:
>
>> On Oct 2, 2008, at 2:08 PM, David Weintraub wrote:
>>
>>> There's no EASY way to remove information in a Subversion
>>> repository.
>>>
>>> What you need to do is do a data dump, filter the results, and then
>>> reload the data into a new Subversion repository. Yes, it isn't fun.
>>>
>>> You need to be on the repository host and use the "svnadmin dump"
>>> command to dump the repository.
>>>
>>> Once you do that, you can use svndumpfilter command to filter out
>>> the
>>> unwanted revisions.
>>>
>>> Once you have a filtered dump file, you can use "svnadmin load" to
>>> reload your data into a new repository.
>>>
>>> See <http://svnbook.red-bean.com/en/1.5/svn-
>>> book.html#svn.reposadmin.maint.tk.svndumpfilter>
>>> for more information.
>>
>> And what you also need to realize is that since you use branches (and
>> maybe other cheap copies within your project), removing history may
>> make your repository larger instead of smaller, as all the cheap
>> copies of information you're deleting has to be converted into full
>> representations.
>>
>> Basically, the answer to your question is don't. Get a larger hard
>> drive.
>
> You're right if you are selecting versions of text files.
>
> However, if you are deleting entire obsolete projects or older
> versions of binary versions you will probably save quite a bit of
> room.

That could certainly be. However you have to weigh the cost of the
extra (or larger) hard drive against the cost of making your
repository temporarily unavailable while your dump, filter, and load,
and having everyone check out new working copies and transfer over
any uncommitted changes from their old working copies.

> Almost all version control systems use diff format for saving text
> files, but this is not true for binaries nor if you're deleting whole
> directory trees.

Subversion does not distinguish between text and binary files at this
level; it stores all files as differences. Some types of binary files
can be stored quite efficiently this way, but others (especially some
compressed formats) not so much.

>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-10-03 12:12:23 CEST

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.