22.11.2013 Aufrufe

Borland® StarTeam® 2006 - Borland Technical Publications

Borland® StarTeam® 2006 - Borland Technical Publications

Borland® StarTeam® 2006 - Borland Technical Publications

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Projektübergreifende Dateiabhängigkeiten<br />

Wenn Projekte sehr stark zusammenhängen, sind die projektübergreifenden Abhängigkeiten nur minimal, dennoch<br />

können projektübergreifende Dateirelationen auftreten. Einige, entweder verfasste oder generierte Dateien müssen<br />

möglicherweise in mehreren Projekten verwendet werden.<br />

Eine Möglichkeit der Handhabung dieser Situation ist, die abhängigen Dateien eines Projekts in anderen Projekten<br />

gemeinsam zu nutzen. Oberflächlich gesehen funktioniert dieser Ansatz, aber die Erfahrung zeigt, dass<br />

projektübergreifende Freigaben aus mehreren Gründen problematisch sind:<br />

♦ Wenn das Verhalten einer Freigabe auf "frei platzierbar" konfiguriert ist, gehen Änderungen aus dem<br />

übergeordneten Projektfluss sofort in das untergeordnete Projekt über, und dies machmal zu ungelegenen<br />

Zeiten. Viele StarTeam-Benutzer sind der Meinung, dass sie die Aktualisierungsverteilung regelmäßiger<br />

durchgeführt werden muss.<br />

♦ Wenn das Verhalten einer Freigabe für einen bestimmten Zeitstempel konfiguriert ist, muss dieser gelegentlich<br />

angepasst werden, damit die Aktualisierungen verteilt werden können. Dadurch wird das gemeinsam genutzte<br />

Element schreibgeschützt und das fortlaufende Anpassen des Konfigurationszeitstempels für eine große<br />

Anzahl von Freigaben kann sehr aufwändig werden.<br />

♦ Wenn die Eigenschaft "Verzweigen bei Änderung" einer Freigabe den Wert "true" erhält (möglicherweise<br />

unbeabsichtigt) und an der untergeordneten Freigabe wird eine Änderung vorgenommen, verzweigt sich das<br />

Objekt im untergeordneten Projekt. Dadurch wird die Freigabe vom übergeordneten Objekt getrennt, was nur<br />

schwer rückgängig gemacht werden kann. Wenn es sich bei der untergeordneten Freigabe um einen Ordner<br />

handelt, führt eine harmlose Änderung, z. B. das Ändern des Arbeitsordners dazu, dass sich das Ordnerobjekt<br />

verzweigt.<br />

♦ Wenn ein Element, das Teil einer Freigabebaumstruktur ist, aktualisiert wird, müssen alle Elemente in dieser<br />

Baumstruktur gesperrt werden. Die zunehmende Größe der Freigabebaumstruktur wirkt sich proportional auf<br />

die Update-Leistung aus.<br />

♦ Wenn veraltete Ansichten und Projekte gelöscht werden, kann in der Regel das StarTeam-Dienstprogramm<br />

für die Bereinigung verwendet werden, um nicht verwendete Datenbankdatensätze und Archivdateien<br />

zurückzugeben. Freigaben, die von einem gelöschten Projekt oder einer gelöschten Ansicht verwendet<br />

werden, können jedoch verhindern, dass das Dienstprogramm für die Bereinigung die erwartete Reduzierung<br />

der Datenbank- und Archivgröße erreicht. Dies bedeutet, dass die Größe von Serverkonfigurationen, die<br />

produktübergreifende Freigaben verwenden, möglicherweise nicht reduziert werden kann.<br />

Aus diesen Gründen haben sich andere Techniken für die Handhabung projektübergreifender Dateiabhängigkeiten<br />

als effektiver erwiesen. Im Folgenden finden Sie einige Alternativen für Freigaben, die in unterschiedlichen<br />

Situationen funktionieren. Letztendlich sind Freigaben möglicherweise immer noch die geeignetste Möglichkeit,<br />

Dateien aus einem Projekt in einem anderen freizulegen, dennoch sollten die folgenden Ansätze zuerst in Erwägung<br />

gezogen werden.<br />

Bereitstellungsansatz<br />

Wenn ein Projekt Dateien "besitzt", die in andere Projekte eingecheckt werden müssen, können Sie einen Prozess<br />

einrichten, in dem die Dateien regelmäßig "bereitgestellt" werden. Dies bedeutet, dass die Dateien bei Bedarf und<br />

möglicherweise auf Skriptbasis in das Zielprojekt eingecheckt werden. Häufig ist ein Build-Skript eine gute<br />

Möglichkeit, den Bereitstellungs-Task einzubetten, besonders dann, wenn die bereitzustellenden Dateien vom Build<br />

generiert werden.<br />

Konfigurationsansatz<br />

Es kann vorkommen, dass die abhängigen Dateien nicht in jedes Projekt eingecheckt werden müssen, sie sind<br />

jedoch Teil eines allgemeinen Prozesses, z. B. eines Build- oder Bereitstellungsprozesses. In diesen Fällen kann<br />

eine einfache XML-Datei erstellt werden, in der die Dateien angegeben sind, die an dem jeweiligen Prozess beteiligt<br />

sind. Wenn die Datei an einem eingerichteten Speicherort eingecheckt und bei Konfigurationsänderungen<br />

211

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!