( ESNUG 383 Item 11 ) ------------------------------------------- [11/28/01]

Subject: ( ESNUG 381 #7 ) CVS, Perforce, Synchronicity, RCS, ClearCase

> I am currently using ClearCase for revision control and I have used
> DesignSync from Synchronicity in the past.  I had several technical
> issues with DesignSync such as a corrupted database and being unable to
> access the latest version of files.  This was over a year ago.  I am
> sure Synchronicity fixed these issues but it caused me to switch to
> ClearCase at the time.
>
>     - Anders Nordstrom
>       Nortel Networks Ltd.                       Ottawa, Canada


From: Kris Monsen <monsen@mobilygen.com>

Hi, John,

As a person who generally hates GUIs, because they generally waste more time
than they save, I had to respond to a couple of points.  As long as a
revision-control product has the necessary features I'm fine with whatever
solution people are comfortable with, but here's my take:

 1. CVS is free.
 2. CVS supports hierarchy (don't even try using RCS).
 3. CVS is stable:
    - it has been and is being used by thousands of developers worldwide
    - I've been using it at various companies since 1994 and don't recall
      ever having a problem caused by CVS.  (I've had people try to get 
      *around* CVS using some back-door hack, but not problems using CVS
      commands themselves).
 4. CVS does work across many platforms, including just about every
    conceivable form of Unix as well as Windows.
 5. CVS does have a GUI that runs on Windows, though I won't claim it's
    the best because I haven't used it much.  I prefer command lines.
 6. CVS supports updating/checking out files based on dates. (see below)
 7. CVS supports "merging" of changes by multiple people on the same
    revision.  Why are people so spooked by this?  It is a totally
    deterministic, well-known algorithm.  If there are conflicts where
    two people have changed the same lines, then it shows you both changes
    in the merged files and requires you to manually resolve the conflict.
    In contrast to another writer, we often have people making updates
    to the same files (fixing or adding a feature in a test bench, e.g.).
    It's a great time saver to be able to make the change without waiting
    for someone else's lock.
 8. I wrote up a little tutorial that gets most people going on CVS in
    about a half hour.  Occasionally someone needs a little further
    explanation, but it hasn't been difficult to manage at all.

Tom Tessier wrote:

> For those of you familiar with Tags ask yourself this question: "What
> does it take to move a tag on a group of files with RCS/CVS/ClearCase
> and others?" 

Tom should try using:

          cvs tag -F <TAGNAME> <files_or_directory>

The -F is for force.  Depending on exactly what Tom wanted to do, there are
a couple of other options you can specify.  The CVS man page is not that
difficult.

However, I should say that it's usually a bad idea to move tags.  You may
*think* that you want to move a tag to a new/different version of a file,
but it's very likely that you, or even worse, someone else will need the
original group of files later.  By moving the tag, in effect you're erasing
some of your history.  (No, you're not losing the revision history of
individual files, you're losing the "group history" of what you had tagged;
someone may have used that tag already for checking out a release.)

It is far better simply to make a *new* tag for the new versions of file
you have.  For example, instead of using a single tag:

	GOLDEN_RTL

and moving it every time a file changes, instead you should use:

	GOLDEN_RTL_1_0
	GOLDEN_RTL_1_1
	...
	GOLDEN_RTL_2_0
etc.

Tom also wrote:

> Another problem that occurs is "It worked last week!"  How do you get
> back to that point?  In SOS it has the ability to back up to a date and
> time.  This is very powerful in a multiple person environment.

So does CVS.

	cvs update -D "2 days ago" ...
	cvs update -D "01/20/2001 15:30" ...

Very nice.

Sorry I got so long-winded.  My character flaw.

    - Kris Monsen
      Mobilygen Corp.                            Santa Clara, CA

         ----    ----    ----    ----    ----    ----   ----

From: Shiv Sikand <sikand@matrixsemi.com>

Hi, John,

I have been obsessed with the issue of Software Configuration Management
(SCM) software for hardware design for about 5 years now. I've generally
worked in the microprocessor/ full custom  arena so managing physical
databases has always been an interesting challenge.

A very important aspect of SCM is to have an integrated system for both 
hardware and software so that all aspects of the design can be 
represented through a common state point.  In 1998 I started work on a 
Cadence Integration with Perforce while working at SGI.  This integration 
is now available as Open Source under the BSD license thanks to SGI, 
Cadence and Perforce.

I presented a paper about the benfits of Perforce for hardware design 
and the Open Source Cadence-Perforce Integration at the Cadence Users 
Group meeting and the Perforce User Conference last year.  The paper is at:

   http://www.perforce.com/perforce/conf2000/shiv/shivsikand.pdf

As described in the paper, Perforce contains key features not found in 
any other tool.  The most significant one of these is InterFile Branching 
which allows a very powerful parallel and incremental 'branch and replace'
development approach to be applied to physical databases.

The code and some other publications on the subject can be found on the 
Perforce Public Depot.

   http://public.perforce.com/public/perforce/cdsp4/index.html

I'm always on the lookout for volunteers to help out in this area!

CDSP4 is currently in use at SGI, Velio Communications, Afara WebSystems 
and Matrix Semiconductor.  Perforce is also deployed quite heavily at 
nVida and MIPS.  I know that there are other sites using Perforce for 
hardware design but do not have a list offhand.  I understand that there 
are currently over 50,000 Perforce Users worldwide.  Their product, 
support and pricing structure is excellent.  And of course, once you have 
a Perforce license, CDSP4 is free.  :-)

    - Shiv Sikand
      Matrix Semiconductor


 Sign up for the DeepChip newsletter.
Email
 Read what EDA tool users really think.


Feedback About Wiretaps ESNUGs SIGN UP! Downloads Trip Reports Advertise

"Relax. This is a discussion. Anything said here is just one engineer's opinion. Email in your dissenting letter and it'll be published, too."
This Web Site Is Modified Every 2-3 Days
Copyright 1991-2024 John Cooley.  All Rights Reserved.
| Contact John Cooley | Webmaster | Legal | Feedback Form |

   !!!     "It's not a BUG,
  /o o\  /  it's a FEATURE!"
 (  >  )
  \ - / 
  _] [_     (jcooley 1991)