Was ist der Unterschied zwischen Full Baseline und Incremental Baseline in Clearcase UCM?

Ich habe die volle Grundlinie für meine Veröffentlichung angewendet. für Beispiel Baseline “MYProj_2.0.0.20”.

Dann fand das Testteam ein großes Problem. Um dieses Entwicklungsteam zu beheben, wurden nur wenige Änderungen vorgenommen.

Nach Abschluss des Builds habe ich die gleiche Baseline erneut angewendet “MYProj_2.0.0.20. Aber dieses Mal habe ich eine inkrementelle Baseline angewendet. Gemäß UCM wurde die Baseline MYProj_2.0.0.20 als MYProj_2.0.0.20.3452 (einige zufällige Nummer am Ende, um es einzigartig zu machen).

Wenn ich MYProj_2.0.0.20.3452 als Release-Baseline betrachte, enthält es alle Änderungen oder nur die Änderungen (Delta-Wechsel zwischen “MYProj_2.0.0.20” und “MYProj_2.0.0.20.3452”).

Bitte klären Sie mich.

Es enthält alle Änderungen.

Außer inkrementellen Baselines berechnen diese Änderungen durch Hinzufügen von:

  • einzigartige Änderungen, die durch die wenigen Änderungen eingeführt wurden (das ist eine “inkrementelle Basislinie”: ein Labelsatz nur für die neuen Versionen seit der vorherigen Baseline)
  • Alle anderen Änderungen beziehen sich bereits auf die vorherigen Baselines bis zu einer vollständigen Baseline

Siehe ” Arten von Baselines “:

  • Eine vollständige Baseline ist eine Baseline, die Sie erstellen, indem Sie alle Versionen aller Elemente unterhalb des Stammverzeichnisses der Komponente aufzeichnen.
  • Eine inkrementelle Baseline ist eine Baseline, die Sie erstellen, indem Sie die letzte vollständige Baseline und diejenigen Versionen von Elementen aufzeichnen, die seit der letzten vollständigen Baseline geändert wurden.

(Es gibt auch ” Checkpoint-Baselines “, wie in ” Über ClearCase-Baselines ” beschrieben, die automatisch von Deliver- und Rebase-Vorgängen erstellt werden, aber Sie brauchen sich jetzt nicht um diese zu kümmern)

Deshalb bevorzuge ich immer eine vollständige Grundlinie: Alle Delta-Operationen (wie ein “Vergleich mit einer anderen Grundlinie”) sind schneller, wenn Ihre letzte Grundlinie eine vollständige ist.
Das Argument für inkrementelle Baselines ist, dass sie schneller erstellt werden können (aufgrund der geringeren Anzahl von Versionen, auf die die Baseline angewendet werden soll).
Aber wenn Ihre UCM-Komponente so groß ist, dass die Beschriftung all ihrer Versionen zu lang ist, ist Ihre Komponente möglicherweise zu groß.

Beachten Sie, dass Sie eine inkrementelle Grundlinie immer auf eine vollständige Grundlinie aufrüsten können.

Beachten Sie auch, dass Sie unterscheiden zwischen:

  • der Titel einer Baseline (hier ” MYProj_2.0.0.20 “: Sie können MYProj_2.0.0.20 viele ” MYProj_2.0.0.20 ” Baselines MYProj_2.0.0.20 )
  • die ID einer Baseline (immer eindeutig: wenn ” MYProj_2.0.0.20 ” bereits vergeben ist, generiert ClearCase am Ende einige Zahlen: ” MYProj_2.0.0.20.345 2″)