"Greg A. Woods" wrote:
> 
> [ On Monday, June 19, 2000 at 17:13:10 (-0500), David Thornley wrote: ]
> > Subject: Re: ".trunk" patch refinement
> >
> > Since it's a very natural thing to do, lots of people have done
> > it.  It's easy (and correct) to say they should not have done
> > that, but the important fact is that it has been done.
> 
> However the important thing now is to continue to deprecate that
> practice.

Certainly.  This does nothing to fix any existing problem.  Nor does
it help if somebody imports RCS files that have 2.x or higher rev
numbers.

  That includes removing the instructions for doing it from the
> manual (and replacing them with dire warnings against doing it), and
> most definitely not adding new code that's expressly designed to handle
> only one of the corner cases that this sillyness introduces.
> 
Um, why not?  And what are the other corner cases?  If you use the
rev number like a cookie, what problems are likely to result?

In any case, one of the things we keep saying is never to use the
rev numbers, and so you're claiming that the proper way to reference
the head is to use the rev numbers?  That looks like a kludge to me.

So, since a kludge works on repositories that have never had a
certain mistaken operation done to them (one that is easy and natural),
you're against providing a clean way to handle the problem?

> (If someone found some way to clean up *all* of the corner cases, and if
> they could justify the effort this would take even in the face of the
> design goal of using symbolic tags to identify such things, then that
> might be a somewhat different matter....)
> 
Are you saying that there might be a reason to change the rev number
to 2.x or so?  I don't think so.  I think CVS works best, and is likely
to continue to work best, when people treat the rev number as a raw
identifier for the change.  This doesn't mean that it isn't worth
handling cases where somebody has previously changed the rev number.

> > Mike Little referred to "some previous cvs admin", and this is
> > precisely what happened in my case.  Some previous CVS admin
> > put some of the rev numbers to 2.x, and there's no way I can put
> 
> It may be possible to renumber the trunk back to "normal", especially if
> there aren't too many branches in your repository....
> 
There are too many.

> 
> You can also leap-frog into a new repository starting fresh with "1.1"
> at some major milestone in your project.  The actual amounts of use of
> history information is usually far lower than people surmise without
> measurements and indeed is extremely low if you only examine events
> where users back past a major milestone.  You don't have to 100% cut
> them off from the old history either -- just keep it in a read-only
> repository for easy local access and then occasionally audit to see how
> often it's accessed before you retire it for good.
> 
We routinely have to change code that's three or four milestones back,
when (for instance) a client runs into a bug.  Keeping this code
read-only is not acceptable.

Further, we consider it important to be able to match source changes
with the Gnats PR they are associated with.  If we were to change the
rev numbers, we'd have to find some way to change them in the PRs.
This seems to me a major project to support a particular kludge.

Another issue is that we can't invalidate everybody's workspace
without major consequences.  Most people have projects going pretty
much all the time, and there's no time in which everybody's workspace
is synchronized with the repository.  Forcing such a synchronization
is going to be expensive.

-- 
David H. Thornley                          Software Engineer
at CES International, Inc.:  [EMAIL PROTECTED] or (763)-694-2556
at home: (612)-623-0552 or [EMAIL PROTECTED] or
http://www.visi.com/~thornley/david/

Reply via email to