Lösen von Konflikten der Team Foundation-Versionskontrolle

Ein Vorteil der Verwendung von Team Foundation-Versionskontrolle zur Verwaltung von Dateien ist, dass mehrere Personen gleichzeitig an einer Datei arbeiten können. Ein Nachteil ist, dass Sie manchmal Konflikte auflösen müssen, bevor Sie abrufen, einchecken, aufnehmen, zusammenführen oder einen Rollback für Ihre Dateien vornehmen können.

Es kann ärgerlich sein, auf Konflikte zu stoßen. Daher stellt das System Informationen und Tools bereit, die Ihnen dabei helfen, Konflikte zu verstehen und zu beheben.

  • Lösen von Konflikten

  • Automatisches Auflösen aller Konflikte

  • Automatisches Zusammenführen eines einzelnen Konflikts

  • Manuelles Auflösen eines einzelnen Konflikts

  • Grundlegendes zu den automatischen Optionen

  • Über die Eingabeaufforderung arbeiten

  • Abrufen von Tipps

Lösen von Konflikten

Verwenden Sie das Fenster Konflikte lösen, um Konflikte zu lösen, von denen Sie blockiert werden.

Ein Eincheckvorgang wird durch widersprüchliche Änderungen blockiert

Fenster "Konflikte lösen"

Standardmäßig werden im Fenster nur die vom zuletzt ausgeführten Vorgang verursachten Konflikte angezeigt. Wenn das Fenster in diesem Zustand ist, wird eine Meldung angezeigt, die wie folgt beginnt: Pfadfilter angewendet. Um alle Konflikte im Arbeitsbereich anzuzeigen, wählen Sie Alle Konflikte abrufen aus. Es wird eine Nachricht angezeigt, die wie folgt beginnt: n Konflikt(e).

Wenn seit der letzten Änderung an den Dateien bereits viel Zeit vergangen ist, sind möglicherweise neue Konflikte aufgetreten. Um das Fenster Konflikte lösen zu aktualisieren, wählen Sie Aktualisieren aus.

Jeder Konflikt enthält Informationen und manchmal Links, mit deren Hilfe Sie den Konflikt möglichweise beheben können. Um weitere Informationen abzurufen, können Sie den Konflikt und eine der folgenden Optionen auswählen:

  • Schaltfläche "Verlauf" Verlauf, um den Verlauf der Datei anzuzeigen. Wenn der Vorgang, der den Konflikt verursacht hat, eine Zusammenführung oder ein Rollback ist, können Sie das Menüsteuerelement rechts von Verlauf und dann Quellverlauf oder Zielverlauf auswählen.

    Siehe Abrufen des Verlaufs eines Elements.

  • Schaltfläche "Mit Anmerkung versehen" Klicken Sie auf Mit Anmerkungen versehen, um Details zu allen Änderungen anzuzeigen, die an der letzten Version der Datei vorgenommen wurden, einschließlich des Bearbeiters und des Zeitpunkts der Änderung. Siehe Anzeigen von Dateiänderungen mithilfe von Anmerkungen.

  • Schaltfläche "Datei vergleichen" Vergleichen (oder im Menü auf der rechten Seite der Schaltfläche und dann Befehl auswählen.) Das Fenster zum Anzeigen der Unterschiede wird angezeigt.

Automatisches Auflösen aller Konflikte

Standardmäßig versucht das System automatisch, Konflikte mit Alle automatisch auflösen aufzulösen, falls Sie diese Option nicht deaktiviert haben (siehe Tipps). Im Fenster "Konflikte lösen" können Sie Alle automatisch auflösen auch manuell auswählen und dann eine der folgenden Optionen auswählen:

  • Wählen Sie Alle Konflikttypen aus, wenn das System versuchen soll, die Konflikte automatisch mit der gesamten Heuristik zu lösen.

  • Wählen Sie Bestimmte Konflikttypen aus, wenn das System versuchen soll, die Konflikte zu lösen, Sie aber einen Teil der Heuristik ausschließen möchten.

    Das Dialogfeld Zu lösende Konflikte auswählen wird angezeigt. Aktivieren oder deaktivieren Sie die gewünschten Optionen, und wählen Sie dann Automatisch auflösen aus. Weitere Informationen finden Sie unten unter Grundlegendes zu den automatischen Optionen.

Das System versucht, die im Fenster Ausstehende Änderungen angezeigten Konflikte automatisch zu lösen. Alle Konflikte, die das System nicht lösen kann, bleiben im Fenster. Sie müssen diese Konflikte manuell lösen.

So führen Sie einen einzelnen Konflikt automatisch zusammen

Wählen Sie Automatisch zusammenführen aus, wenn Sie versuchen möchten, ausgewählte Konflikte mithilfe aller Optionen zum automatischen Zusammenführen zu beheben, die in Grundlegendes zu den automatischen Optionen beschrieben werden.

Tipp

Sie können die Tasten STRG oder die UMSCHALTTASTE gedrückt halten und dann mehrere Konflikte auswählen.

Hinweis

Wenn Automatisch zusammenführen deaktiviert ist, muss der Konflikt manuell gelöst werden.

Manuelles Auflösen eines einzelnen Konflikts

Wenn das System einen Konflikt nicht automatisch lösen kann, oder wenn Sie sicherstellen möchten, dass Sie die Änderungen verstehen, müssen den Konflikt manuell lösen. In den ausgewählten Konflikten zeigt das System die Aktionen an, die Sie ausführen können, um den Konflikt zu lösen. Die angezeigten Aktionen hängen vom Konflikttyp und vom Vorgang ab, der den Konflikt verursacht hat.

Zusammenführen von Änderungen im Zusammenführungstool

Wenn ein Konflikt von widersprüchliche Inhaltsänderungen verursacht wird, können Sie Änderungen im Zusammenführungstool zusammenführen auswählen.

Wenn Sie diese Aktion auswählen, wird das Zusammenführungsfenster angezeigt.

Fenster "Zusammenführen"

Das Ergebnis der Arbeit zur Konfliktlösung wird im Bereich Ergebnisse gezeigt.

In diesem Fenster können Sie folgende Aufgaben ausführen:

  • Wählen Sie das Layout des Fensters aus: Vertikale Anzeige, Horizontale Anzeige, Gemischte Anzeige.

  • Navigieren Sie in den Unterschieden und Konflikten.

  • Wählen Sie Elemente von der linken und rechten Version der Datei aus, um diese im Ergebnis zu berücksichtigen.

  • Geben Sie im Ergebnisbereich zusätzlichen Inhalt in die Datei ein.

  • Zeigen Sie den Verlauf der Datei an. Siehe Abrufen des Verlaufs eines Elements.

  • Vergleichen Sie die verschiedenen Versionen der Datei.

  • Kommentieren Sie die Datei, um anzuzeigen, wer welche Änderung vorgenommen hat. Siehe Anzeigen von Dateiänderungen mithilfe von Anmerkungen.

Wenn Sie mit dem Inhalt im Bereich Ergebnis zufrieden sind, wählen Sie Zusammenführung akzeptieren aus.

Grundlegendes zu den automatischen Optionen

In besonderen Fällen sollten Sie die Arten von Konflikten einschränken, die durch die Option Alle automatisch auflösen gelöst werden.

Wenn Sie Alle automatisch auflösen und dann Bestimmte Konflikttypen auswählen, wird das Dialogfeld Zu lösende Konflikte auswählen angezeigt.

Dialogfeld "Zu lösende Konflikte" auswählen

Grund für das Auftreten von Konflikten, die per automatischer Auflösung durch das System gelöst werden sollen

Erläuterung in diesem Beispiel

Zu aktivierendes Kontrollkästchen

Nicht in Konflikt stehende Inhaltsänderungen wurden in jeder Version einer Datei vorgenommen

In der Dateiversion links wurde am Anfang eine 0 (null) hinzugefügt. In der Datei rechts wurde am Ende eine 3 (drei) hinzugefügt:

Nicht in Konflikt stehende Inhaltsänderungen

Konflikte mit beliebigen Inhaltsänderungen

Es wurden Änderungen vorgenommen, die speziell für den Arbeitsbereich (während des Abrufens oder Eincheckens) oder die Zielversion (während des Zusammenführens oder des Rollbacks) gelten

vier und fünf wurden dem Arbeitsbereich oder der Zielversion hinzugefügt:

Eindeutige Inhaltsänderungen für Arbeitsbereich oder Ziel

Konflikte mit Inhaltsänderungen, die nur im lokalen Arbeitsbereich oder in der Zielverzweigung vorgenommen wurden

Es wurden Änderungen vorgenommen, die speziell für den Server (während des Abrufens oder Eincheckens) oder die Quellversion (während des Zusammenführens oder des Rollbacks) gelten

vier und fünf wurden dem Server oder der Quellversion hinzugefügt:

Eindeutige Inhaltsänderungen für Server oder Quelle

Konflikte mit Inhaltsänderungen, die nur in der Serverversion oder der Quellverzweigung vorgenommen wurden

Eine Datei auf dem Server (während des Abrufens oder Eincheckens) oder in der Quellverzweigung (während des Zusammenführens oder des Rollbacks) wurde umbenannt

Sie haben eine Datei mit dem Namen launch.cs ausgecheckt und daran gearbeitet. Während dieses Zeitraums hat eine andere Person ein Changeset eingecheckt, das sich auf diese Datei ausgewirkt hat. Das Changeset hat den Inhalt der Datei nicht geändert, die Datei jedoch in start.cs umbenannt.

Konflikte aufgrund der Umbenennung der Datei in der Serverversion oder der Quellverzweigung

  • Es wurden allgemeine Inhaltsänderungen vorgenommen, die in allen Versionen zu identischem Inhalt geführt haben

  • Sie haben eine Datei geändert, diese über den abgegrenzten Eincheckbuild eingecheckt und die Option Ausstehende Änderungen lokal beibehalten aktiviert

Änderungen an jeder Version führten zu identischem Dateiinhalt. Die Änderungen können den Inhalt der Dateien betreffen, wie im folgenden Beispiel gezeigt:

Identische Inhaltsänderungen in der jeweiligen Version

Diese Option dient auch zum Lösen von Konflikten, die durch alle anderen Vorgängen verursacht wurden (z. B. Umbenennung, Löschung, Aufheben von Löschungen und Verzweigung) und die zu identischen Dateien führen.

Tipp

Wenn Sie beim Fortfahren dieses Kontrollkästchen aktivieren, löst das System diese Änderungen auf, indem sie die Serverversion auf den Arbeitsbereich überträgt (herunterlädt).

Konflikte, die durch identische Änderungen auf dem Server und im Arbeitsbereich verursacht werden

Über die Eingabeaufforderung arbeiten

Tipps

  • TippStandardmäßig versucht das System automatisch, alle Konflikte durch Alle automatisch auflösen zu lösen. Wählen Sie zum Ändern der Option in der Menüleiste Tools, Optionen aus, und navigieren Sie dann im Dialogfeld Optionen zu Quellcodeverwaltung, Visual Studio Team Foundation Server. Deaktivieren Sie das Kontrollkästchen Versuchen, entstehende Konflikte automatisch zu lösen.

  • TippMuss das Team zusammenarbeiten, um viele Konflikte, die z. B. nach Zusammenführung in einer großen Codebasis auftreten können, lösen zu können? Ist dies der Fall, könnte ein öffentlicher Arbeitsbereich auf einem gemeinsam genutzten Entwicklungscomputer hilfreich sein. Siehe Erstellen und Verwenden von Arbeitsbereichen.