[Top][All Lists]

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

Re: Smoke, FUD (was Re: CVS corrupts binary files ...)

From: Greg A. Woods
Subject: Re: Smoke, FUD (was Re: CVS corrupts binary files ...)
Date: Wed, 30 Jun 2004 15:43:25 -0400 (EDT)

[ On Monday, June 28, 2004 at 14:58:03 (-0700), Mark D. Baushke wrote: ]
> Subject: Re: Smoke, FUD (was Re: CVS corrupts binary files ...) 
> Yes, but diff is not diff3. diff is used for the
> delta format. diff3 is used by rcsmerge, not for
> fundamental version deltas.

I think you're confused -- the differencing algorithms used are
fudamentally intertwined (and fundamentally based on units of lines of

Pretending you can do merges using some other algorithm while still
trying to store your deltas in unix diff format is just leading everyone
down the garden path to a dark dank corner no-one really wants to be in.

The uniform use of differencing algorithms and their corresponding merge
algorithms (which are of course just "editing" scripts), is what makes
it worthwhile to use something like RCS as the foundation for CVS in the
first place.

I.e. it is not sufficient to just use the RCS delta format as a means of
archive compression -- that format is integral to the whole idea of
detecting, reporting, and merging, changes in any RCS-compatible tool.

> Are there really utilities out there that try to
> to read RCS formats directly and do not allow for
> rcsfile(5) syntax to be used? If so, could you
> name any of them?

Humans, for one.  :-)

(I know some folks can do manual merges of SCCS files, and though the
same techniques won't work quite so well on RCS files because of the
reverse delta thing, there are still a great many other valid reasons to
read and even repair RCS files by hand.)

There are a number of commercial software pacakges which are "GNU RCS
compatible", apparently without using RCS source code, with the most
"popular" perhaps being CS-RCS (though I've not confirmed 100% that it
does not use RCS source code).  SourceCodeManager is apparently another,
and P4D yet another.

Perforce also uses RCS compatible files as its archive format, but I'm
not sure if its core RCS handling was derived from RCS source code or not.

I think I've just scratched the surface too, if any of the rumours I've
heard are close to true.

                                                Greg A. Woods

+1 416 218-0098                  VE3TCP            RoboHack <address@hidden>
Planix, Inc. <address@hidden>          Secrets of the Weird <address@hidden>

reply via email to

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