[Top][All Lists]

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

Re: How well does CVS handle other types of data?

From: Greg A. Woods
Subject: Re: How well does CVS handle other types of data?
Date: Tue, 17 Jul 2001 01:00:24 -0400 (EDT)

[ On Monday, July 16, 2001 at 18:17:06 (-0700), Paul Sander wrote: ]
> Subject: Re: How well does CVS handle other types of data?
> I think most of us will agree with me that CVS must be able commit any
> file given to it, and reproduce it exactly.  Arguing that it should commit
> only the files it deems suitable is way off the mark.

Why don't you just go spend $100 on a hundred gigabytes of disk or so
and forget you ever heard about CVS?  ;-)

CVS, and indeed all concurrent versioning systems fundamentally expect
that the majority, if not all, of the changes they manage will be
automatically mergable using a diff3 style merge (and of course that any
merge conflicts will be detectable and reported by diff3).

Within the domain of mergable text files, yes, a version tracking system
should be able to reproduce the content committed to it (modulo any
keyword expansions that may be required, of course).

If you start using a hammer on your torx-head machine screws then you
can't expect to get anything but little pieces of mostly-flat metal and
certainly nothing that looks very much like the screws you started with.
You might get a little further with a torx screwdriver and a bunch of
nails, but you're still not going to be doing a very efficient or
effective job, and you may just damage your screwdriver and maybe even
some of the nails too, not to mention the material you're driving them

I.e. tools are specialised -- use them as you see fit and invent new
tools where necessary!  ;-)

> >> If you do this, then at least use the same conflict detector that CVS does.
> >> CVS uses the following, rather than the complicated egrep expression that
> >> Greg gives:
> >> 
> >>    grep '^>>>>>>> '
> >Why don't you read the code Paul?  CVS does not use grep or egrep.
> I did.  Now tell me why there's a practical difference between what the code
> does and what my grep does.

Your single RE matches exactly one of the three different strings the
code in CVS matches.  At least the "complicated egrep expression" I gave
matched all three (as well as a fourth potential marker that diff3
normally also produces).

> >Note also that three different strings are matched by the default CVS,
> >and four by my version.
> I reviewed the file_has_markers function in some detail.  It matches
> exactly the same set of strings as the pattern I gave above.

Ah, no, the RE you gave, i.e. '^>>>>>>> ', matches exactly one of the
three different strings.

                                                        Greg A. Woods

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

reply via email to

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