Zerstören von Dateien mit Versionskontrolle

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

Visual Studio 2019 | Visual Studio 2022

Im Laufe der Zeit erfasst ein Versionskontrollserver eine wachsende Anzahl von Dateien und Ordnern. Dies kann Probleme verursachen, wenn Sie versuchen, die Anforderungen an den Speicherplatz zu verwalten. Möglicherweise sind Sie gezwungen, alle Projekte und ihre Hierarchien aus der Versionskontrolle zu entfernen. Beispielsweise kann ein Projekt nur zu Lernzwecken erstellt worden sein, oder vielleicht sind einige Dateien mit einem Virus infiziert. Daher müssen Sie als TFVC-Administrator gelegentlich Dateien und Ordner zerstören, die der Versionskontrolle unterliegen.

Das folgende Verfahren zeigt, wie Sie Dateien und Ordner mithilfe des tf destroy-Befehls zerstören. Obwohl die Dateien dauerhaft entfernt werden, können Sie den ihnen zugeordneten Verlauf beibehalten. Weitere Informationen zu den Optionen und Argumenten, die für tf destroy verfügbar sind, finden Sie unter Destroy-Befehl (Team Foundation-Versionskontrolle).

Hinweis

Der destroy-Vorgang ist nur über die Befehlszeile verfügbar.

Voraussetzungen

  • Zum Verwenden des destroy-Befehls müssen Sie Mitglied der Sicherheitsgruppe Team Foundation-Administratoren sein. Weitere Informationen finden Sie unter TFVC-Standardberechtigungen.

  • Bevor Sie tf destroy ohne die /keephistory-Option ausführen, löschen Sie zunächst die Dateien, die Sie zerstören möchten. Weitere Informationen finden Sie unter Löschen von Dateien und Ordnern aus der Versionskontrolle. Nachdem Sie eine Datei gelöscht haben, enthält ihr Dateiname nun eine Lösch-ID. Wenn ein Dateiname beispielsweise aFile.cs lautet, lautet der Dateiname nach dem Löschen aFile.cs;x123, wobei „x123“ die Lösch-ID ist.

    Nachdem Sie die Dateien gelöscht haben, können Sie das TFVC-Warehouse synchronisieren. Andernfalls wird das Warehouse nicht mit den zerstörten Elementen synchronisiert.

So zerstören Sie Dateien, die der Versionskontrolle unterliegen, dauerhaft

Wählen Sie in Windows Start aus, und geben Sie dann Developer-Eingabeaufforderung ein. Wählen Sie in den Suchergebnissen die Developer-Eingabeaufforderung für Ihre Visual Studio-Version aus, z. B. Developer-Eingabeaufforderung für Visual Studio 2022.

  • Geben Sie an der Eingabeaufforderung Folgendes ein, um das Zerstören der Datei aFile.cs in der Vorschau anzuzeigen, ohne sie tatsächlich zu zerstören:

    tf destroy /preview /i $/MyTeamProject/aFile.cs
    

    Hinweis

    Der Text im Eingabeaufforderungsfenster gibt Destroyed: $/MyTeamProject/aFile.cs an, aber die Datei wird nicht tatsächlich zerstört, wenn Sie die /preview-Option verwenden.

  • Um die Datei aFile.cs zu zerstören, geben Sie an der Eingabeaufforderung Folgendes ein:

    tf destroy /i $/MyTeamProject/aFile.cs
    

    Dieser Befehl zeigt Informationen zu möglichen ausstehenden Änderungen und Shelvesets im Eingabeaufforderungsfenster an. Wenn Sie /i oder „nicht interaktiv“ angeben, werden Sie nicht mit einem Dialogfeld Ja, Nein oder Ja für Alle zu einer Bestätigung aufgefordert, bevor Dateien endgültig entfernt werden.

  • Um alle Dateien in aFolder zu zerstören und gleichzeitig ihren Verlauf beizubehalten, geben Sie Folgendes ein:

    tf destroy /keephistory $/MyTeamProject/aFolder
    

    Hinweis

    Sie können nicht /preview mit /keephistory angeben.

    Diese Aktion behält die Verlaufsinformationen zu allen Dateien in aFolder bei. Mit dem tf history-Befehl können Sie den Verlauf einer Datei anzeigen. Sie können den Verlauf auch im Quellcodeverwaltungs-Explorer in Visual Studio anzeigen. Weitere Informationen finden Sie unter Verlaufsbefehl und Abrufen des Verlaufs eines Elements.

  • Verwenden Sie die /stopat-Option, um die Verlaufsinformationen bis zu einem versionspec-Wert (einschließlich) beizubehalten. Der versionspec-Wert kann die neueste Version, ein bestimmtes Changeset oder ein Datum sein. Weitere Informationen zu versionspec-Werten finden Sie unter Verwenden von Befehlen der Team Foundation-Versionssteuerung.

    Um alle Dateien im Projekt MyTeamProject zu zerstören und gleichzeitig den Verlauf für die Dateien bis einschließlich 23.10.2005 beizubehalten, geben Sie Folgendes ein:

    tf destroy $/MyTeamProject /keephistory /stopat:D10/23/2005
    
  • Verwenden Sie die /startcleanup Option, um die TFVC-Metadaten der Dateien sofort zu bereinigen, auf die nicht mehr durch Azure DevOps Server verwiesen wird. Ohne diese Option werden diese Metadaten entfernt, wenn die Datenbank von einem SQL-Prozess verwaltet wird, der alle fünf Tage ausgeführt wird. Sieben Tage nach dem Löschen der TFVC-Metadaten wird der Inhalt der zerstörten Dateien von einem anderen SQL-Prozess gelöscht.

    Um alle Dateien in aFolder sofort zu zerstören, geben Sie Folgendes ein:

    tf destroy /startcleanup $/MyTeamProject/aFolder