Freigeben über


Was ist Team Foundation Version Control?

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Visual Studio 2019 | Visual Studio 2022

Unabhängig davon, ob Ihr Softwareprojekt groß oder klein ist, empfiehlt es sich, die Versionssteuerung so schnell wie möglich zu verwenden. Versionssteuerungssysteme bestehen aus Software, mit der Sie Änderungen nachverfolgen können, die Sie im Code im Laufe der Zeit vornehmen. Während Sie Ihren Code bearbeiten, teilen Sie dem Versionssteuerungssystem mit, eine Momentaufnahme Ihrer Dateien zu erstellen. Das Versionssteuerungssystem speichert diese Momentaufnahme dauerhaft, sodass Sie sie später bei Bedarf zurückrufen können.

Azure DevOps Services und TFS bieten zwei Modelle der Versionssteuerung: Git, die verteilte Versionssteuerung ist, und Team Foundation Version Control (TFVC), die zentrale Versionssteuerung ist. Dieser Artikel enthält eine Übersicht und einen Ausgangspunkt für die Verwendung von TFVC. Wenn Sie entscheiden, welche Art von Azure DevOps Services/TFS-Versionssteuerung verwendet werden soll, lesen Sie die Auswahl des richtigen Versionssteuerelements für Ihr Projekt.

Gründe für die Verwendung der Versionssteuerung

Ohne Versionssteuerung sind Sie versucht, mehrere Kopien von Code auf Ihrem Computer beizubehalten. Dies ist gefährlich, da es einfach ist, eine Datei in der falschen Kopie des Codes zu ändern oder zu löschen, was möglicherweise zu einem Verlust der Arbeit kommt. Versionssteuerungssysteme lösen dieses Problem, indem sie alle Versionen Ihres Codes verwalten, Sie aber gleichzeitig mit einer einzelnen Version präsentieren.

Versionssteuerungssysteme bieten die folgenden Vorteile:

  • Erstellen von Workflows – Versionssteuerungsworkflows verhindern das Chaos aller Benutzer, die ihren eigenen Entwicklungsprozess mit unterschiedlichen und inkompatiblen Tools verwenden. Versionssteuerungssysteme bieten Prozesserzwingung und Berechtigungen, sodass jeder auf derselben Seite bleibt.
  • Arbeiten mit Versionen – Jede Version enthält eine Beschreibung für die Änderungen in der Version, z. B. Beheben eines Fehlers oder Hinzufügen eines Features. Diese Beschreibungen helfen Ihnen, Änderungen in Ihrem Code nach Version anstelle einzelner Dateiänderungen zu befolgen. Code, der in Versionen gespeichert ist, kann jederzeit nach Bedarf aus der Versionssteuerung angezeigt und wiederhergestellt werden. Dies erleichtert das Einfache, neue Arbeiten von einer beliebigen Codeversion zu entfernen.
  • Code zusammen – Versionssteuerelement synchronisiert Versionen und stellt sicher, dass Ihre Änderungen nicht mit anderen Änderungen aus Ihrem Team in Konflikt stehen. Ihr Team basiert auf der Versionskontrolle, um Konflikte zu lösen und zu verhindern, auch wenn Personen Gleichzeitig Änderungen vornehmen.
  • Beibehalten eines Verlaufs – Das Versionssteuerelement behält einen Verlauf der Änderungen bei, wenn Ihr Team neue Versionen Ihres Codes speichert. Dieser Verlauf kann überprüft werden, um herauszufinden, wer, warum und wann Änderungen vorgenommen wurden. Der Verlauf gibt Ihnen das Vertrauen, zu experimentieren, da Sie jederzeit einen Rollback zu einer früheren guten Version ausführen können. Mithilfe des Verlaufs können Sie die Arbeit aus einer beliebigen Codeversion erstellen, z. B. zum Beheben eines Fehlers in einer vorherigen Version.
  • Automatisieren von Aufgaben – Automatisierungsfeatures zur Versionssteuerung sparen Zeit für Ihr Team und generieren konsistente Ergebnisse. Sie können Tests, Codeanalyse und Bereitstellung automatisieren, wenn neue Versionen in der Versionssteuerung gespeichert werden.

Es gibt viele Dinge, die Ihre Zeit als Entwickler in Anspruch nehmen können: Vervielfältigung von Fehlern, Lernen neuer Tools und Hinzufügen neuer Features oder Inhalte. Da die Anforderungen Ihrer Benutzer skaliert werden, hilft die Versionssteuerung Ihrem Team, rechtzeitig zusammenzuarbeiten und zu versenden.

Team Foundation-Versionssteuerung

TFVC ist ein zentrales Versionssteuerungssystem. In der Regel verfügen Teammitglieder nur über eine Version jeder Datei auf ihren Entwicklungscomputern. Daten zur Versionsgeschichte einer Datei werden nur auf dem Server gespeichert. Verzweigungen sind pfadbasiert und werden auf dem Server erstellt.

TFVC ermöglicht es Ihnen, differenzierte Berechtigungen anzuwenden und den Zugriff auf eine Dateiebene einzuschränken. Da Ihr Team die gesamte Arbeit in Azure DevOps Server überprüft, können Sie änderungen ganz einfach überwachen und identifizieren, welcher Benutzer in einem Changeet eingecheckt wurde. Mithilfe von Vergleichen und Kommentieren können Sie die genauen Änderungen identifizieren, die sie vorgenommen haben.

Schnellstart

Beginnen Sie, indem Sie ein Projekt erstellen, Ihren Arbeitsbereich konfigurieren und Ihren Code überprüfen und freigeben. Sie können eine der folgenden Clients oder IDEs verwenden:

Schrittweise Lernprogramme

Lernen Sie die Grundlagen der Arbeit in TFVC mit dem folgenden Lernprogramm kennen, das einen Tag im Leben eines DevOps-Entwicklers mit Visual Studio und TFVC zeigt.

Was möchten Sie tun?

  • Einrichten Ihres Entwicklungscomputers und erste Schritte

    Verbringen Sie einige Minuten, um Ihren Entwicklungscomputer einzurichten, um alle Vorteile einer versionsgesteuerten Codebasis zu nutzen.

  • Auswählen des Workflowmodells – Server oder lokale Arbeitsbereiche

    • Serverarbeitsbereiche – Bevor Sie Änderungen vornehmen, checken Teammitglieder Dateien öffentlich aus. Die meisten Vorgänge erfordern, dass Entwickler mit dem Server verbunden sind. Dieses System erleichtert das Sperren von Workflows. Andere Systeme, die auf diese Weise funktionieren, umfassen Visual Source Safe, Perforce und CVS. Mit Serverarbeitsbereichen können Sie bis zu sehr große Codebasen mit Millionen von Dateien pro Verzweigung und großen Binärdateien skalieren.

    • Lokale Arbeitsbereiche – Jedes Teammitglied übernimmt eine Kopie der neuesten Version der Codebasis mit ihnen und funktioniert bei Bedarf offline. Entwickler überprüfen ihre Änderungen und lösen Konflikte nach Bedarf. Ein anderes System, das auf diese Weise funktioniert, ist Subversion.

  • Entwickeln Ihrer App in einer versionsgesteuerten Codebasis

    Sie müssen in den meisten Situationen nicht über die Versionssteuerung nachdenken. Das System unterstützt Sie, wenn Sie Ihre Änderungen verwalten und verstehen müssen.

  • Anhalten Ihrer Arbeit

    Manchmal müssen Sie einige oder alle Aufgaben, die Sie ausführen, beiseite legen. Ihr Versionskontrollsystem kann einige der Schmerzen wegnehmen und die Zeit reduzieren, die durch Unterbrechungen verschwendet wird.

  • Tragen Sie Ihre Arbeit zum Team bei

    Überprüfen Sie Ihre Änderungen, damit Ihr Team den von Ihnen erstellten Wert erstellen, testen und freigeben kann.

  • Isolieren des Risikos

    Verwenden Sie Verzweigungen und Sperren, um risiken zu isolieren, die von verschiedenen Teams durchgeführt werden.

  • Anzeigen und Verwalten früherer Versionen

    Ein Vorteil eines Versionskontrollsystems besteht darin, dass Sie sich in der Zeit zurückschauen können, um detaillierte Informationen darüber zu erhalten, welche Änderungen an Ihren Dateien vorgenommen wurden.

  • Vergleichen von Ordnern und Dateien

    Sie können Serverordner und lokale Ordner miteinander vergleichen und die Unterschiede zwischen den Inhalten der einzelnen Ordner anzeigen.

  • Lösen von Team Foundation-Versionssteuerungskonflikten

    Ein großer Vorteil der Verwendung der Versionssteuerung besteht darin, dass mehrere Personen gleichzeitig an einer Datei arbeiten können. Ein Nachteil ist, dass manchmal Konflikte gelöst werden müssen. Obwohl es frustrierend sein kann, Konflikte zu begegnen, stellt das System Informationen und Tools bereit, die Ihnen helfen, Konflikte zu verstehen und zu lösen.

  • Arbeiten mit Versionssteuerungssperren

    Wenn Sie verhindern müssen, dass eine Datei oder ein Ordner ausgecheckt und geändert wird, können Sie sie sperren.

Vorgänge, die nur über die Befehlszeile "tf" verfügbar sind

In der folgenden Tabelle sind Aufgaben für TFVC aufgeführt, die Sie nur an einer Eingabeaufforderung mithilfe des tf Befehlszeilentools ausführen können.

Aufgabe Command
Löschen Sie den Arbeitsbereich eines anderen Benutzers. workspace mit der /delete Option
Rückgängigmachen des Auscheckens eines anderen Benutzers. undo
Entfernen Sie die Sperre eines anderen Benutzers. lock
Definieren sie den Bezeichnungsbereich. label
Führen Sie eine basislose Zusammenführung aus. merge
Inhalt dauerhaft zerstören. destroy
Rollback des Effekts einer oder mehrerer Änderungenets. rollback