Übersicht über die Sandboxes
Eine Sandbox ist ein privater Workspace, der sich auf dem Clientcomputer befindet und den Inhalt eines Projekts auf dem Server spiegelt. Obwohl sie wie das gespiegelte Projekt aussieht und agiert, handelt es sich bei einer Sandbox eigentlich um eine Sammlung von Zeigern, die auf deren tatsächliche Entsprechung im Masterprojekt verweisen. Sandboxes ermöglichen Ihnen, lokal in Ihrem eigenen Workspace zu arbeiten, ohne die Arbeit anderer zu stören.
Für die verschiedenen Entwicklungstypen stehen verschiedene Typen von Sandboxes zur Verfügung.
• Normale Sandboxes eignen sich für die kurz- oder langfristige, sequentielle Entwicklung eines Projekts.
• Varianten-Sandboxes sind hilfreich, um vom Hauptentwicklungspfad abzuzweigen.
• Build-Sandboxes eignen sich zum Testen von bestimmten Revisionen eines Projekts.
Varianten-Sandboxes verwenden
Eine Varianten-Sandbox basiert auf einem bestimmten Entwicklungspfad eines Projekts. Beim Erstellen einer Varianten-Sandbox wählen Sie den Entwicklungspfad, der verwendet werden soll. In der Varianten-Sandbox können Sie den aktuellen Status des Projekts auf diesem Entwicklungspfad sowie die Änderungen anzeigen, die von anderen Entwicklern vorgenommen wurden, die das Projekt verwenden.
Wenn eine Varianten-Sandbox zum ersten Mal erstellt wird, wird sie gleichzeitig auch für alle Unterprojekte erstellt, wobei der zugewiesene Name als eindeutige ID reserviert wird, um zu gewährleisten, dass zwei Pfade nicht mit demselben Namen bezeichnet werden.
Konflikte können entstehen, wenn Entwickler, die an verschiedenen Pfaden arbeiten, an derselben Revision einer Datei arbeiten müssen. Angenommen, ein Entwickler arbeitet in einer normalen Sandbox, in der utility.dll, Version 1.4, enthalten ist, und ein anderer Entwickler arbeitet in einer Varianten-Sandbox, die utility.dll, Version 1.3, enthält. Beide Versionen werden dann in demselben Mitgliedsverlauf gespeichert.
Um potenzielle Konflikte zu verhindern, wenn Sie ein Mitglied zum ersten Mal aus einer Varianten-Sandbox einchecken, werden Sie aufgefordert, den Mitgliedsverlauf abzuzweigen. Beim Abzweigen des Mitgliedsverlaufs erhalten alle Entwicklungspfade ihre jeweils eigene Kopie der Revision.
Build-Sandboxes verwenden
Nach Abschluss größerer Etappen, wie z.B. einer Produktveröffentlichung, können Sie eine statische Version eines gesamten Projekts, wie es zu einem bestimmten Zeitpunkt in der Vergangenheit vorhanden war, erstellen. Sie erstellen eine Build-Sandbox, um das Projekt zu erstellen oder zu prüfen, aber nicht um weitere Arbeiten auf einem neuen Entwicklungspfad zu beginnen. Build-Sandboxes können für die Qualitätssicherung oder Produktion verwendet werden, um Dateien in einer festen Konfiguration zu verteilen.
Eine Build-Sandbox ist eine Sandbox, die einem bestimmten Projektprüfpunkt zugeordnet ist, und keinen Entwicklungspfad hat (da sie statisch ist und nicht für die weitere Entwicklung vorgesehen). Es kann keine weitere Entwicklung in einer Build-Sandbox durchgeführt werden.
Wenn z.B. ein Build Manager eine CD eines speziellen Build brennen muss, der eine bestimmte Funktion nicht enthält, kann er einen früheren Prüfpunkt verwenden, um eine Build-Sandbox auf dem System zu erstellen, das auf CD gebrannt wird.
Innerhalb einer Build-Sandbox können Sie:
• Beschriftungen und Status ändern
• Ihre Sandbox erneut synchronisieren
• Eine Mitgliedsrevision in der Build-Sandbox mit einer anderen Revision vergleichen
• Eine Mitgliedsrevision in der Build-Sandbox mit einer anderen Revision zusammenführen (es ist allerdings natürlich nicht möglich, eine zusammengeführte Datei zurück in die Build- Sandbox einzuchecken)
• Nach Unterschieden zwischen Prüfpunkten suchen, wie z.B. Änderungen an einem Projekt, seitdem auf dieses der letzte Prüfpunkt gesetzt wurde
Beim Erstellen einer Build-Sandbox wählen Sie den Projektprüfpunkt, auf dessen Grundlage die Build-Sandbox erstellt werden soll.
Mit einer Build-Sandbox ist Folgendes nicht möglich:
• Auschecken, Sperren oder Einchecken von Mitgliedern
• Hinzufügen oder Entfernen von Mitgliedern
• Festlegen des Entwicklungspfads
• Einfrieren oder Reaktivieren von Mitgliedern
• Setzen von Prüfpunkten auf das Masterprojekt
• Projekt- oder Mitgliedsattribute ändern
• Mitglieder wiederherstellen
• Festlegen der Mitgliedsrevision
Alle diese Vorgänge stellen eine Fortsetzung der Entwicklung dar, die eine normale oder eine Varianten-Sandbox erforderlich macht.