[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Removing old revisions

From: Mark D. Baushke
Subject: Re: Removing old revisions
Date: Sat, 03 Mar 2007 10:16:18 -0800

Hash: SHA1

address@hidden writes:

> I am wondering about removing old revisions from our files in cvs.  One of
> our managers thinks that be retaining all of the old revisions we are
> incurring overhead in our cvs interactions.  We have rather large
> repositories and quite a few of the members have many revisions.

The revisions are kept in backward deltas, so that on the mainline the
revision that is most accessible is the top-of-tree.

> It seems to me that I recall reading someplace in the past that removing old
> revisions is not a very wise thing to do. Does anybody have any thoughts or
> advice on this subject?

Do not do it.

> Is it a common practice or not?  


> Is it dangerous? 

It means that you lose revision history and thus the ability to go back
to the revisions deleted or to branch from them.

It could also be a problem if you have lots of branches as deleteing the
branch point revision makes it impossible to use that branch ever again.

This is because branches are forward deltas from the branch point
revision. To get to the top-of-branch, CVS (like RCS) traverses back to
the greatest common ancestor using reverse deltas and then traverses
forward along the revisions that lead to the top-of-branch.

> Is there any performance degradation by not removing old revisions?

Hmmm.... there was a bug (#17560) where the merge algorithm for checking
out very old revisions was O(n*n), but that has been reduced to O(n) in
what will become CVS 1.11.23. You may checkout a copy of this version of
CVS from the if you wish. (Or, you could get a copy
of the patches that Michael J Smith posted to the list.)

If you do not need to get back to ancient revisions very often, then I
suppose there could be some degredation if the size of the files are too
big, say in excess of a gigabyte or two. Such that adding a new revision
is actually taking lots of time for the filesystem to rewrite.

        -- Mark
Version: GnuPG v1.4.6 (FreeBSD)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]