[p4] ClearCase vs. Perforce

Stephen Vance steve at vance.com
Mon Jun 11 18:02:27 PDT 2001


At 10:30 PM 6/11/2001 +0200, axel.wienberg at coremedia-ag.com wrote:
>Just a small, but important point about directory versioning: It is not 
>necessary to version directories to handle renames; it suffices to version 
>the location of individual files.  That is, the association between 
>directories and contained files can be stored either in the directory 
>("which files do you contain?") or in the file ("which directory are you 
>contained in?") Two systems to do the latter are Teamware and Bitkeeper: 
>They store the full path in each file's version history, effectively 
>versioning rename operations.

The weakness here is that you still can't support hard links (the same 
underlying file in two logical locations).  CC can do this, although there 
are some annoying semantics when you check one out for edit.  Most others 
can't.

>An advantage of versioning the path compared to versioning directories is 
>that two users can independently add files to the same directory, without 
>having to perform an additional merge operation on the directory 
>itself.  Another advantage is that the user does not have to bother about 
>directories, because they are not modelled as first-class entities, but 
>are created and deleted as needed.  One concept less to be learned.

You have the same advantage in not version directories at all, as Perforce 
does.

>The disadvantage of the Teamware/Bitkeeper solution is that in order to 
>rename a directory hierarchy, you have to touch every single file 
>contained within it (because a file's path includes the names of all 
>superdirectories), and the semantics of merging renames need some getting 
>used to.  However, this caused no actual problems when we used teamware.

This is true of all systems I've encountered.  Since CC separates name from 
storage, it only has to touch all the names, but it has to touch all of 
them.  Since Perforce essentially branches and deletes the file, the same 
is true.


Stephen Vance
mailto:steve at vance.com
http://www.vance.com/




More information about the perforce-user mailing list