What is the difference between Full baseline and Incremental baseline in Clearcase UCM?

It will contain all changes.

Except an incremental baselines will compute those changes by adding:

  • unique modifications introduced by the few changes (that is what an “incremental baseline” is: a label set only on the new versions since the previous baseline)
  • all the other changes already references by the previous baselines up to a full baseline

See “Types of baselines“:

  • A full baseline is a baseline that you create by recording all versions of all elements below the component’s root directory.
  • An incremental baseline is a baseline that you create by recording the last full baseline and those versions of elements that have changed since the last full baseline was created.

(there are also “checkpoint baselines“, as detailed in “about ClearCase baselines“, created automatically by deliver and rebase operations, but you don’t need to be concerned with those right now)

That is why I always prefer a full baseline: all delta operation (like a “compare with another baseline”) are quicker if your last baseline is a full one.
The argument in favor of incremental baselines is that they are faster to create (because of the lesser number of version to put baseline on).
But if your UCM component is so large that putting a label on all its versions is too long, maybe your component is too big in the first place.

Note that you always can upgrade an incremental baseline to a full baseline.

Note also that you have a difference between:

  • the title of a baseline (here “MYProj_2.0.0.20“: you can put as many “MYProj_2.0.0.20” baselines as you want)
  • the id of a baseline (always unique: if “MYProj_2.0.0.20” is already taken, then ClearCase generate some numbers at the end: “MYProj_2.0.0.20.3452″)

Leave a Comment