Exemplarische Vorgehensweise: Arbeiten mit der Team Foundation-Versionskontrolle über die Befehlszeile

Aktualisiert: November 2007

In dieser exemplarischen Vorgehensweise wird beschrieben, wie der Visual Studio Team System Team Foundation Server-Befehlszeilenclient tf.exe verwendet wird, um Versionskontrollvorgänge auszuführen.

Im Verlauf dieser exemplarischen Vorgehensweise führen Sie folgende Aufgaben aus:

  • Erstellen Sie den Arbeitsbereich, in dem sich Ihre Kopie der Dateien auf dem Versionskontrollserver befindet, und rufen Sie eine Kopie der Quelle vom Server ab.

  • Fügen Sie dem Server eine Datei hinzu, checken Sie diese Datei vom Server aus, und bearbeiten Sie sie im Arbeitsbereich.

  • Einchecken von ausstehenden Änderungen und Erstellen eines Changesets

  • Wiederherstellen einer zu einem bestimmten Zeitpunkt vorhandenen Version des Arbeitsbereichs durch Abrufen der Quelldateien vom Server, die dem Zustand des Arbeitsbereichs zum Zeitpunkt der Erstellung eines bestimmten Changesets entsprechen

Vorbereitungsmaßnahmen

Wenn Sie eine Verbindung mit einem Team Foundation Server herstellen können und über die entsprechenden Berechtigungen verfügen, können Sie Versionskontrollbefehle an einer Eingabeaufforderung, in einer Batchdatei oder einer Skriptdatei ausführen. Hierzu müssen Sie entweder das Dienstprogramm Visual Studio 2008-Eingabeaufforderung verwenden oder an der aktuellen Eingabeaufforderung mithilfe von vsvars32 verschiedene Umgebungsvariablen festlegen, wie im folgenden Beispiel beschrieben. Weitere Informationen über das Beitreten zu einem Teamprojekt finden Sie unter Exemplarische Vorgehensweise: Herstellen einer Verknüpfung mit einem Teamprojekt.

So öffnen Sie die Visual Studio 2008-Eingabeaufforderung

  • Klicken Sie auf Start, zeigen Sie auf Alle Programme, auf Microsoft Visual Studio 2008 und auf Visual Studio-Tools, und klicken Sie anschließend auf Visual Studio 2008-Eingabeaufforderung.

Stattdessen können Sie auch vsvars32 im Visual Studio-Installationspfad ausführen. Dieser lautet i. d. R. DriveLetter:\Programme\Microsoft Visual Studio 9.0\Common7\Tools.

Erforderliche Berechtigungen

Zum Abschließen dieser exemplarischen Vorgehensweise sind die Berechtigungen CreateWorkspace, Checkin und PendChange erforderlich.

Erstellen eines Arbeitsbereichs

Bevor Sie mit der Versionskontrolle arbeiten können, müssen Sie einen Arbeitsbereich einrichten. Ein Arbeitsbereich ist eine lokale Kopie der Dateien und Ordner auf dem Server. Wenn Sie Elemente, die der Versionskontrolle unterliegen, hinzufügen, bearbeiten, löschen, verschieben, umbenennen oder auf sonstige Weise ändern, werden die Änderungen im Arbeitsbereich isoliert, in dem Sie sie sicher erstellen und testen können. Wenn Sie einen Eincheckvorgang ausführen, werden diese Änderungen an den Server übergeben und sind außerhalb des Arbeitsbereichs verfügbar.

Ein Arbeitsbereich besteht aus einer Reihe von Zuordnungen. Mit jeder Zuordnung wird ein Ordner auf dem Server zusammen mit einem lokalen Ordner auf dem Datenträger zugeordnet. Um eine lokale Kopie der Dateien vom Server abzurufen, erstellen Sie einen neuen Arbeitsbereich, und geben die Zuordnungen für den Arbeitsbereich an. Füllen Sie dann mit dem Befehl get den Arbeitsbereich mit Quelldateien auf.

Bevor Sie auf dem Computer Befehle der Team Foundation-Versionskontrolle ausführen können, müssen Sie einen Arbeitsbereich erstellen. Der Arbeitsbereich behält die Ausgabe der Vorgänge bei und ermöglicht es Ihnen, sie durch Einchecken an den Server zu übergeben.

So erstellen Sie einen Arbeitsbereich, um die Dateien unter Versionskontrolle zu verwalten

  1. Klicken Sie auf Start, zeigen Sie auf Alle Programme, auf Microsoft Visual Studio 2008 und auf Visual Studio-Tools, und klicken Sie anschließend auf Visual Studio 2008-Eingabeaufforderung.

  2. Geben Sie mkdir c:\projects ein.

  3. Geben Sie cd c:\projects ein.

  4. Geben Sie tf workspace /new /s:servername ein, wobei servername für den Namen von Team Foundation Server, z. B. tf workspace /new /s:/team1server, steht, und drücken Sie dann die EINGABETASTE.

    Hinweis:

    Wenn Sie das erste Mal eine Verbindung zum Server herstellen, müssen Sie die vollständige URL angeben. Geben Sie z. B. "http://team1server:8080" an.

  5. Geben Sie im Dialogfeld Arbeitsbereich erstellen einen Namen für den neuen Arbeitsbereich ein, z. B. "cmdwalkthrough".

  6. Wählen Sie unter der Spalte Quellcodeverwaltungsordner ein Teamprojekt auf dem Server aus.

    Sie können auf die Auslassungspunkte (...) klicken, um die Serverordner zu durchsuchen.

    Der ausgewählte Ordner wird dem Ordner c:\projects zugeordnet, der unter der Spalte Lokaler Ordner aufgelistet ist.

  7. Klicken Sie auf OK.

Wenn Sie an der Eingabeaufforderung tf workspaces eingeben, werden alle Arbeitsbereiche angezeigt, die Sie auf dem aktuellen Computer erstellt haben. Weitere Informationen finden Sie unter Befehl Workspaces.

Wenn Sie einen Arbeitsbereich erstellen, verwaltet das System für diesen Arbeitsbereich eine Arbeitsbereichsdefinition. Die Arbeitsbereichsdefinition wird auf dem Team Foundation Server gespeichert und listet alle Dateien im Arbeitsbereich, die Version, auf der der Arbeitsbereich basiert, sowie den aktuellen Status auf. Weil Arbeitsbereichsdefinitionen auf dem Server gespeichert werden, kann jeder Benutzer mit den entsprechenden Berechtigungen die Arbeitsumgebung auf seinem Computer duplizieren, jedoch ohne ausstehende Änderungen. Weitere Informationen hierzu finden Sie unter Befehl Get.

Hinzufügen und Bearbeiten einer Datei

Nachdem Sie einen Arbeitsbereich erstellt haben, können Sie angeben, welche Dateien zur Versionskontrolle hinzugefügt werden sollen. Dann können Sie sie bearbeiten, bevor Sie die Änderungen einchecken.

So bereiten Sie eine Datei zum Hinzufügen zur Versionskontrolle vor

  1. Geben Sie an der Eingabeaufforderung notepad 314.cs ein, und drücken Sie dann die EINGABETASTE.

  2. Wenn im Editor die Frage Möchten Sie eine neue Datei erstellen? angezeigt wird, klicken Sie auf Ja.

  3. Geben Sie in Editor using System.IO; ein, speichern Sie die Änderungen, und schließen Sie dann Editor.

  4. Geben Sie an der Eingabeaufforderung tf add 314.cs ein, um der Liste ausstehender Änderungen die Datei hinzuzufügen.

  5. Geben Sie tf status ein, um die ausstehende Hinzufügung von 314.cs zu bestätigen.

    Mit diesem Befehl können Sie alle ausstehenden Änderungen im aktuellen Arbeitsbereich anzeigen.

In Team Foundation können Sie der Versionskontrolle ein Element nicht in einem einzigen Schritt hinzufügen. Zunächst fügen Sie dem Satz von ausstehenden Änderungen eine Datei im Arbeitsbereich hinzu. Dann übergeben Sie alle ausstehenden Änderungen als eine Einheit an den Versionskontrollserver.

Team Foundation erzwingt das Hinzufügen in zwei Schritten, um sicherzustellen, dass Sie den Code im Kontext testen und kompilieren können, bevor Sie ihn auf dem Server einchecken. Dies bedeutet auch, dass Team Foundation keine Änderungen übergeben kann, wenn eine der Änderungen aus irgendeinem Grund nicht an den Server übergeben werden kann.

Einchecken von ausstehenden Änderungen

Wenn Sie einen Satz ausstehender Änderungen einchecken, erstellt Team Foundation ein Changeset.

So checken Sie alle ausstehenden Änderungen im Arbeitsbereich ein

  1. Geben Sie an der Eingabeaufforderung tf checkin ein.

  2. Geben Sie im Dialogfeld Einchecken im Feld Kommentar einen Kommentar ein, der die Art der Änderungen beschreibt, und klicken Sie dann auf Einchecken.

Ein Changeset ist ein logischer Container, in dem Team Foundation alle Elemente für einen einzelnen Eincheckvorgang zusammengefasst werden. Die meisten Eincheckvorgänge sind komplexer als das hier angegebene einfache Beispiel. Häufig umfasst ein Eincheckvorgang Änderungen an mehreren Dateien und Ordnern. Daher stellt ein Changeset einen vollständigen Satz von Aufgaben dar, den Sie als Einheit in den Arbeitsbereich einfügen können.

Ein Changeset besteht aus folgenden Elementen:

  • Revisionen von Quelldateien und -ordnern, z. B. Hinzufügungen, Umbenennungen, Bearbeitungen, Löschungen und Verschiebungen

  • Zugehörige Arbeitsaufgaben, z. B. Fehler

  • Systemmetadaten, z. B. Changesetnummer, Autor, Datum/Uhrzeit usw.

  • Eincheckhinweise und Kommentare

Danach erstellen Sie eine zweite Version der Datei 314.cs, um zu überprüfen, wie verschiedene Versionen einer Datei auf dem Versionskontrollserver gespeichert werden.

So erstellen Sie eine neue Version einer Datei, die der Versionskontrolle unterliegt

  1. Geben Sie an der Eingabeaufforderung tf checkout 314.cs ein.

  2. Geben Sie notepad 314.cs ein.

  3. Fügen Sie in Editor nach using System.IO; eine neue Zeile hinzu, und geben Sie dann using System.Windows; ein.

    Hinweis:

    Mit diesem Schritt wird absichtlich ein Fehler erzeugt. In einem späteren Schritt wird gezeigt, wie die fehlerfreie Version der Datei wiederhergestellt wird.

  4. Speichern Sie die Änderungen, und schließen Sie Editor.

  5. Geben Sie an der Eingabeaufforderung tf checkin ein.

  6. Geben Sie im Dialogfeld Einchecken im Textfeld Kommentar einen Kommentar ein, und klicken Sie auf Einchecken.

    Die ausstehende Änderung in der Datei 314.cs wird auf dem Server als neues Changeset eingecheckt. Auf diese Weise wird auch Version 2 von 314.cs auf dem Versionskontrollserver erstellt.

Zurücksetzen einer Datei auf eine vorherige Version

Softwareentwickler werden häufig gebeten, den Zustand ihrer Arbeitsumgebung wiederherzustellen, der vor zwei Monaten vorhanden war, und eine zielgerichtete Korrektur an einem bestimmten Build vorzunehmen. Changesetnummern helfen bei der Identifizierung bestimmter Sätze von Änderungen, die mit der Zeit eingecheckt wurden.

Eine Changesetnummer ist ein eindeutiger Bezeichner für einen Satz zusammengehöriger Dateirevisionen und Ordnerrevisionen. Die Changesetnummer ist auch eine Versionsnummer für den gesamten Versionskontrollserver zu einem bestimmten Datum und einer bestimmten Uhrzeit.

Daher können Sie den Arbeitsbereich genau auf den Zustand des Servers zurücksetzen, in dem sich dieser befand, als Sie die problematische Codezeile using System.Windows; eingecheckt haben.

So synchronisieren Sie einen Arbeitsbereich mit einem Changeset

  • Geben Sie an der Befehlszeile tf get /version:C<##> ein, wobei <##> für die Nummer des Changesets steht, das die ursprüngliche Version von 314.cs enthält.

    Hinweis:

    Sie können das richtige Changeset mit dem history-Befehl für die Datei 314.cs abrufen. Geben Sie z. B. in der Befehlszeile tf history 314.cs ein.

Der Befehl Get ruft eine Arbeitskopie aller zugeordneten Dateien und Unterordner vom Server im lokalen Arbeitsbereich ab. Die Dateien werden in dem Zustand abgerufen, den sie zum Zeitpunkt der Erstellung von Changeset <##> aufgewiesen haben. Wenn Sie jetzt 314.cs in Editor öffnen, wird nur die Zeile "using System.IO;" angezeigt.

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Navigieren in der Team Foundation-Versionskontrolle

Exemplarische Vorgehensweise: Zurückstellen von Elementen, die der Versionskontrolle unterliegen

Gewusst wie: Zurückstellen und Aufnehmen ausstehender Änderungen

Referenz

Befehl Add

Befehl Workspace

Befehl Unshelve

Weitere Ressourcen

Exemplarische Vorgehensweisen für Team Foundation-Versionskontrolle

Befehlszeilenreferenz der Team Foundation-Versionskontrolle