Freigeben über


Einblick in die Konvertierung von Daten mit den VSS-Upgradetools

Die Aktualisierungstools von Visual SourceSafe eignen sich hervorragend für ein einmaliges, unidirektionale Upgrade der CodeBase von Visual SourceSafe auf Team Foundation Server (TFS).Sie sollten die Tools nur zum Aktualisieren der Daten verwenden, wenn Sie in Visual SourceSafe nicht mehr darauf zuzugreifen und damit beginnen möchten, sie in TFS zu pflegen.

Zwischen TFS und Visual SourceSafe bestehen bedeutende funktionale Unterschiede.Daher ändern die Visual SourceSafe-Upgradetools bestimmte Arten von Daten während des Upgrades.

In diesem Thema

  • Erstellen von Changesets

  • Aktualisieren freigegebener und festgehaltener Elemente

  • Portieren von Verlaufsdaten

    • Portieren der Daten zu Benutzername und Zeitstempel

    • Konvertieren bestimmter Ereignistypen

  • Portieren von Versionskontrollbindungen

Erstellen von Changesets

Die Versionskontrolle von TFS gruppiert Änderungen an mehreren Dateien in eine einzige Einheit, wenn ein Benutzer einen Änderungssatz eincheckt.Diese einzelne Einheit wird als Changeset bezeichnet.

Visual SourceSafe verfügt über keine Funktion, die Changesets entspricht.Während des Konvertierungsprozesses wird jeder Änderungssatz jedoch in ein Changeset gruppiert, solange die folgenden Bedingungen erfüllt sind:

  • Die Änderungen widersprechen einander nicht.Zum Beispiel dürfen sich zwei Aktionen nicht auf dieselbe Datei oder denselben Ordner auswirken.

  • Die Änderungen sind nacheinander innerhalb weniger Minuten aufgetreten .

  • Die Änderungen wurden vom gleichen Benutzer eingecheckt.

  • Die Änderungen weisen den gleichen Eincheckkommentar auf.

Aktualisieren freigegebener und festgehaltener Elemente

In Visual SourceSafe können Sie eine Datei ordnerübergreifend freigeben.Änderungen, die Sie an einer freigegebenen Datei vornehmen, werden in den Ordnern repliziert, in denen die Datei freigegeben ist.Die Versionskontrolle von TFS hat keine entsprechende Funktion.Während des Upgrades werden freigegebene Dateien im Visual SourceSafe-Projekt aktualisiert, indem eine zusätzliche unabhängige Kopie des Elements für die TFS-Versionskontrolle auf dem Server erstellt wird.

Die TFS-Versionskontrolle verfügt auch über keine Funktion, die der Anheften-Funktion in Visual SourceSafe entspricht.Während des Upgrades werden angeheftete Elemente im Visual SourceSafe-Projekt zu etikettierten Elementen auf dem Server für die TFS-Versionskontrolle konvertiert.Weitere Informationen finden Sie im nächsten Abschnitt.

Portieren von Verlaufsdaten

Alle Ereignisse im Verlauf eines Elements in der Visual SourceSafe-Datenbank werden als Changeset auf den Team Foundation Server übertragen.Nachdem der Upgradevorgang abgeschlossen wurde, können Sie diese Daten im Verlaufsfenster anzeigen.Weitere Informationen finden Sie unter Abrufen des Verlaufs eines Elements.

Einige Änderungen an den Daten treten während des Upgrades auf.

ms253166.collapse_all(de-de,VS.110).gifPortieren der Daten zu Benutzername und Zeitstempel

Da jeder Eintrag im Verlauf eines Elements in der Visual SourceSafe-Datenbank in ein Changeset auf dem Team Foundation Server aktualisiert wird, treten die folgenden Änderungen auf:

  • Der Zeitstempel auf dem Changeset wird auf das Datum und die Uhrzeit des Upgrades des Elements festgelegt.

  • Der ursprüngliche Zeitstempel wird im Feld Kommentar des Changesets gespeichert.

  • Der Benutzername wird im Benutzerfeld oder im Kommentarfeld des Changesets gespeichert, je nach Ergebnis des Benutzerzuordnungsprozesses.

    HinweisHinweis

    Wenn Sie steuern möchten, wie den Verlaufsdaten Benutzernamen zugewiesen werden, müssen Sie VssUpgrade verwenden.Lesen Sie dazu Angeben, wie Benutzernamen aktualisiert werden sollen.

ms253166.collapse_all(de-de,VS.110).gifKonvertieren bestimmter Ereignistypen

Ereignisse, wie z. B. Bearbeiten, Umbenennen und Löschen, werden auf einfache Weise von der Visual SourceSafe-Datenbank in Changesets auf dem Team Foundation Server aktualisiert.Das Aktualisierungstool konvertiert jedoch einige Ereignisse auf unerwartete Weise, wie die folgende Tabelle zeigt.

 Visual SourceSafe-Ereignis

Aktualisieren der TFS-Versionskontrolle

Hinzufügen einer Datei oder eines Ordners

Dieses Changeset ist das erste Ereignis im Verlauf jeder Datei und jedes Ordners, die bzw. der aktualisiert wird.Anders als in Visual SourceSafe wird kein Ereignis für das übergeordnete Element der einzelnen untergeordneten Elemente protokolliert, das es enthält.

Verzweigen

Freigabe ist in Visual SourceSafe eine Vorbedingung für das Verzweigen. Die TFS-Versionskontrolle unterstützt allerdings keine Freigabe. Daher erstellt das Upgrade einer verzweigten Datei eine Kopie der Datei im Zielordner.

Die freigegebenen Dateien in der Visual SourceSafe-Datenbank werden auf die TFS-Versionskontrolle aktualisiert, indem die Version der Datei, die vorhanden war, als sie freigegeben wurde, kopiert und diese Kopie im Zielordner abgelegt wird.Danach wird jedes Changeset in beiden Kopien der Datei repliziert, bis das Verzweigungsereignis auftritt.

Bezeichnung

Implizite Elemente mit Bezeichnung: Wenn Sie in Visual SourceSafe einen Ordner bezeichnen, werden die enthaltenen Elemente implizit bezeichnet.Der Upgradevorgang bezeichnet alle aktualisierten Elemente im Teamprojekt explizit.

Explizit bezeichnete Dateien: Wenn Sie in Visual SourceSafe eine einzelne Datei bezeichnen, wird eine neue Version der Datei erstellt. Der Upgradevorgang portiert die Bezeichnung auf die entsprechenden Version in der TFS-Versionskontrolle, aber er erstellt keine neue Version.

HinweisHinweis
Wenn die Visual SourceSafe-Datenbank viele Bezeichnungen enthält, die für viele Dateien übernommen werden, wird der Upgradevorgang möglicherweise verlängert.Wenn Sie diese Daten ausschließen möchten, müssen Sie VssUpgrade verwenden und so konfigurieren, dass Bezeichnungen ignoriert werden.Siehe <Label migrate="false" />.

Verschieben eines Ordners

Durch das Ereignis zum Verschieben eines Ordners wird in der TFS-Versionskontrolle eine neue Version des Ordners erstellt.

Wenn Sie VssUpgrade verwenden, wird der vollständigen Verlauf von Elementen in verschobenen Ordnern nur dann aktualisiert, wenn für Quell- und Zielordner gleichzeitig ein Upgrade durchgeführt wird.Siehe dazu Überprüfen und Beheben von Problemen, die von der Analysefunktion gefunden wurden.

HinweisHinweis
Wenn das Ereignis zum Verschieben von Ordnern mit einem Wiederherstellungsereignis kombiniert wird, werden die Verlaufsdaten möglicherweise nicht ordnungsgemäß aktualisiert.

Wiederherstellen

Verlaufsdaten, die vor einem Wiederherstellungsereignis auftreten, werden nicht aktualisiert.

PIN und UNPIN

Die TFS-Versionskontrolle unterstützt kein Anheften.Die Aktualisierungstools aktualisieren eine festgehaltene Datei, indem zwei Bezeichnungen erstellt werden.

Die PINNED_LATEST-Bezeichnung wird auf die festgehaltenen Versionen der festgehaltenen Dateien und auf die aktuelle Version der nicht festgehaltenen Dateien angewendet.Die PINNED-Bezeichnung wird nur auf die festgehaltenen Versionen der festgehaltenen Dateien angewendet.Nach dem Upgrade ruft die PINNED_LATEST-Bezeichnung dieselben Dateien ab, wie eine Get Latest-Bezeichnung in Visual SourceSafe.Mit Ausnahme der PINNED_LATEST-Bezeichnung werden allerdings u. U. andere Dateien zurückgegeben, wenn nach dem Anheften andere Ereignisse als das Einchecken eingetreten sind, z. B. das Umbenennen oder Löschen der Datei.

Freigabe

Die TFS-Versionskontrolle unterstützt keine Freigabe.Freigegebenen Dateien in der Visual SourceSafe-Datenbank werden auf die TFS-Versionskontrolle aktualisiert, indem die Version der Datei, die vorhanden war, als sie freigegeben wurde, kopiert und diese Kopie im Zielordner abgelegt wird.Danach wird jedes Changeset in beiden Kopien der Datei repliziert.

Wiederherstellen einer Datei oder eines Ordners

Während eines Upgrades von Wiederherstellungsereignissen für eine Datei oder einen Ordner wiederholen die Tools das Ereignis, um eine neue Version der Datei und des Ordners in der TFS-Versionskontrolle zu erstellen.

Die Aktualisierungstools erstellen ein Changeset, das die Datei oder den Ordnernamen, das Datum und die Uhrzeit der Wiederherstellung sowie den Benutzernamen einschließt.

Portieren von Versionskontrollbindungen

Die Aktualisierungstools portieren die Versionskontrollbindungen für jede Projektmappe.

Nächster Schritt

Vorbereiten auf das Upgrade von Visual SourceSafe