Borland® StarTeam® 2006 - Borland Technical Publications
Borland® StarTeam® 2006 - Borland Technical Publications Borland® StarTeam® 2006 - Borland Technical Publications
Projektübergreifende Dateiabhängigkeiten Wenn Projekte sehr stark zusammenhängen, sind die projektübergreifenden Abhängigkeiten nur minimal, dennoch können projektübergreifende Dateirelationen auftreten. Einige, entweder verfasste oder generierte Dateien müssen möglicherweise in mehreren Projekten verwendet werden. Eine Möglichkeit der Handhabung dieser Situation ist, die abhängigen Dateien eines Projekts in anderen Projekten gemeinsam zu nutzen. Oberflächlich gesehen funktioniert dieser Ansatz, aber die Erfahrung zeigt, dass projektübergreifende Freigaben aus mehreren Gründen problematisch sind: ♦ Wenn das Verhalten einer Freigabe auf "frei platzierbar" konfiguriert ist, gehen Änderungen aus dem übergeordneten Projektfluss sofort in das untergeordnete Projekt über, und dies machmal zu ungelegenen Zeiten. Viele StarTeam-Benutzer sind der Meinung, dass sie die Aktualisierungsverteilung regelmäßiger durchgeführt werden muss. ♦ Wenn das Verhalten einer Freigabe für einen bestimmten Zeitstempel konfiguriert ist, muss dieser gelegentlich angepasst werden, damit die Aktualisierungen verteilt werden können. Dadurch wird das gemeinsam genutzte Element schreibgeschützt und das fortlaufende Anpassen des Konfigurationszeitstempels für eine große Anzahl von Freigaben kann sehr aufwändig werden. ♦ Wenn die Eigenschaft "Verzweigen bei Änderung" einer Freigabe den Wert "true" erhält (möglicherweise unbeabsichtigt) und an der untergeordneten Freigabe wird eine Änderung vorgenommen, verzweigt sich das Objekt im untergeordneten Projekt. Dadurch wird die Freigabe vom übergeordneten Objekt getrennt, was nur schwer rückgängig gemacht werden kann. Wenn es sich bei der untergeordneten Freigabe um einen Ordner handelt, führt eine harmlose Änderung, z. B. das Ändern des Arbeitsordners dazu, dass sich das Ordnerobjekt verzweigt. ♦ Wenn ein Element, das Teil einer Freigabebaumstruktur ist, aktualisiert wird, müssen alle Elemente in dieser Baumstruktur gesperrt werden. Die zunehmende Größe der Freigabebaumstruktur wirkt sich proportional auf die Update-Leistung aus. ♦ Wenn veraltete Ansichten und Projekte gelöscht werden, kann in der Regel das StarTeam-Dienstprogramm für die Bereinigung verwendet werden, um nicht verwendete Datenbankdatensätze und Archivdateien zurückzugeben. Freigaben, die von einem gelöschten Projekt oder einer gelöschten Ansicht verwendet werden, können jedoch verhindern, dass das Dienstprogramm für die Bereinigung die erwartete Reduzierung der Datenbank- und Archivgröße erreicht. Dies bedeutet, dass die Größe von Serverkonfigurationen, die produktübergreifende Freigaben verwenden, möglicherweise nicht reduziert werden kann. Aus diesen Gründen haben sich andere Techniken für die Handhabung projektübergreifender Dateiabhängigkeiten als effektiver erwiesen. Im Folgenden finden Sie einige Alternativen für Freigaben, die in unterschiedlichen Situationen funktionieren. Letztendlich sind Freigaben möglicherweise immer noch die geeignetste Möglichkeit, Dateien aus einem Projekt in einem anderen freizulegen, dennoch sollten die folgenden Ansätze zuerst in Erwägung gezogen werden. Bereitstellungsansatz Wenn ein Projekt Dateien "besitzt", die in andere Projekte eingecheckt werden müssen, können Sie einen Prozess einrichten, in dem die Dateien regelmäßig "bereitgestellt" werden. Dies bedeutet, dass die Dateien bei Bedarf und möglicherweise auf Skriptbasis in das Zielprojekt eingecheckt werden. Häufig ist ein Build-Skript eine gute Möglichkeit, den Bereitstellungs-Task einzubetten, besonders dann, wenn die bereitzustellenden Dateien vom Build generiert werden. Konfigurationsansatz Es kann vorkommen, dass die abhängigen Dateien nicht in jedes Projekt eingecheckt werden müssen, sie sind jedoch Teil eines allgemeinen Prozesses, z. B. eines Build- oder Bereitstellungsprozesses. In diesen Fällen kann eine einfache XML-Datei erstellt werden, in der die Dateien angegeben sind, die an dem jeweiligen Prozess beteiligt sind. Wenn die Datei an einem eingerichteten Speicherort eingecheckt und bei Konfigurationsänderungen 308
aktualisiert wird, dann können Build-, Release- oder andere Skripts die XML-Datei auschecken, sie analysieren und bei der Verarbeitung die darin enthaltenen Anweisungen verwenden. Verknüpfungsansatz Anstelle von Freigaben können auch Verknüpfungen verwendet werden, um Objekte serverübergreifend zu verbinden. Mit Verknüpfungen treten viele der mit Freigaben in Zusammenhang stehenden Probleme nicht auf und sie können angeheftet, gelöst und verschoben werden, um auf unterschiedliche Objektrevisionen zu verweisen. Der Nachteil von Verknüpfungen besteht darin, dass sie nicht typisiert, keine Versionsnummer und keine anderen Eigenschaften außer einem Verknüpfungskommentar besitzen, um sie von anderen Verknüpfungen zu unterscheiden, die ebenfalls vorhanden sein können. Verwandte Konzepte Projektadministration Übersicht über Projekte Projektübergreifende Dateiabhängigkeiten Projektübergreifende Aktivitäten unterstützen Verwandte Verfahrensweisen Projekte verwalten 309
- Seite 257 und 258: andere Aktion setzen, die ausgefüh
- Seite 259 und 260: Schnellzugriff auf Projekte und Ele
- Seite 261 und 262: Sicherheit StarTeam bietet Sicherhe
- Seite 263 und 264: Die wichtigsten Knoten, für die Re
- Seite 265 und 266: Gruppenberechtigungen für Objekte
- Seite 267 und 268: ♦ Statuswerte in einer Ansicht ne
- Seite 269 und 270: Verwendung von Passwörtern Passwö
- Seite 271 und 272: Server-Zeitlimit-Optionen Sie könn
- Seite 273 und 274: Übersicht über Benutzer- und Grup
- Seite 275 und 276: Sicherheitsprotokolle Die Anwendung
- Seite 277 und 278: Verwandte Verfahrensweisen Mit dem
- Seite 279 und 280: Zugriffsrechte auf Projektebene gew
- Seite 281 und 282: Zugriffsrechte auf Ansichtsebene ge
- Seite 283 und 284: Zugriffsrechte in einer Verzweigung
- Seite 285 und 286: Zugriffsrechte verweigern StarTeam
- Seite 287 und 288: Zugriffsrechte und Gruppenberechtig
- Seite 289 und 290: Eigenschaftsdialogfeld mit StarTeam
- Seite 291 und 292: ♦ Verwenden Sie Tastaturkürzel,
- Seite 293 und 294: Steuerelemente Steuerelemente sind
- Seite 295 und 296: Benutzerdefinierte Eigenschaftsfeld
- Seite 297 und 298: Verwandte Verfahrensweisen Eigensch
- Seite 299 und 300: Tipp: Die mit der jeweiligen Server
- Seite 301 und 302: Verwandte Verfahrensweisen E-Mail-U
- Seite 303 und 304: Projektkonfiguration Dieser Abschni
- Seite 305 und 306: Projekte autonom halten Die auf ein
- Seite 307: Verwandte Konzepte Projektadministr
- Seite 311 und 312: Ansichtskonfiguration und -verwaltu
- Seite 313 und 314: Vergleichen und Zusammenführen von
- Seite 315 und 316: Erläuterungen zu den Ansichtstypen
- Seite 317 und 318: Ansicht "Alle verzweigen" werden. E
- Seite 319 und 320: Ordnungsgemäße Verwendung von Ans
- Seite 321 und 322: Ansichten, die die iterative Entwic
- Seite 323 und 324: Wenn eine oder mehrere aufeinanderf
- Seite 325 und 326: Verwandte Konzepte Übersicht zu An
- Seite 327 und 328: des Befehls "Arbeitsordner erstelle
- Seite 329 und 330: Heraufstufungsstatuswerte Ein Herau
- Seite 331 und 332: Mit der Zeit ändert sich das Build
- Seite 333 und 334: Prozesselemente Änderungsanforderu
- Seite 335 und 336: Verwandte Konzepte Änderungsanford
- Seite 337 und 338: Verzweigungen Eine Verzweigungsansi
- Seite 339 und 340: Übersicht über die Verzweigungsop
- Seite 341 und 342: Verzweigungsverhalten von Ordnern o
- Seite 343 und 344: Auswirkungen auf Änderungsanforder
- Seite 345 und 346: Übersicht über das Vergleichen/Zu
- Seite 347 und 348: Übersicht über das Vergleichen/Zu
- Seite 349 und 350: Festschreibungsphase In der Festsch
- Seite 351 und 352: View Compare/Merge-Perspektiven Das
- Seite 353 und 354: Mithilfe der Zusammenführungspersp
- Seite 355 und 356: Verwandte Konzepte Ansichten vergle
- Seite 357 und 358: Verzweigen bei Änderung und mit ei
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 />
308