info-cvs
[Top][All Lists]
Advanced

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

Renaming (was Re: 'cvs add' client/server semantics)


From: Paul Sander
Subject: Renaming (was Re: 'cvs add' client/server semantics)
Date: Wed, 2 Feb 2005 04:01:00 -0800


On Feb 1, 2005, at 1:25 PM, address@hidden wrote:

[ On Monday, January 31, 2005 at 08:05:47 (-0800), Mark D. Baushke wrote: ]
Subject: Re: 'cvs add' client/server semantics (was Re: Triggers)

If I move 'foo.c' to 'bar.c' the CVS/Entries file is going to be confused.

In general, doing lots of bulk renaming and local 'cvs add' and 'cvs rm'
operations without contacting the repository could be useful in some
situations, but could be very confusing as well.

Indeed -- people (CVS users in particular :-) need to stop thinking in
terms of "rename" and go back to the good old fundamental underlying
concepts of creation and deletion. There is no such thing as a "rename"
in most facets of computing.

In many facets of computing, that's certainly true. I don't know if I would go so far as to say "most". There are many places where they want a "move" but "add/delete" is an acceptable alternative because it proves to be simpler in specific domains. There are many places where there are alternative algorithms, some of which use "move" and others use "add/delete".

Differencing algorithms, for example, have implementations using both methods. The algorithm that the original Unix diff command used was older and didn't use moves, and its successors maintained the same output format. So there are no popular versions of diff on Unix that list moves, only additions and deletions.

I maintain that in the version control domain, add/delete are not a suitable equivalent of a rename operation. The reason is because there's more to it than linking together partial logs as Greg claims. There are also issues relating to branch management, like deciding which RCS file version 1.2.1.3 comes from.

--
Paul Sander       | "To do two things at once is to do neither"
address@hidden | Publilius Syrus, Roman philosopher, 100 B.C.





reply via email to

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