Lock-Befehl (Team Foundation-Versionskontrolle)

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019 | TFS 2018

Visual Studio 2019 | Visual Studio 2022

Der Team Foundation-Versionskontrolle-Befehl (TFVC) lock sperrt oder entsperrt eine Datei oder einen Ordner. Der Befehl verweigert oder stellt das Recht von Benutzern zurück, ein Element zur Bearbeitung in einem anderen Arbeitsbereich auszuchecken oder ausstehende Änderungen an einem Element aus einem anderen Arbeitsbereich einzuchecken.

Voraussetzungen

Um den lock Befehl verwenden zu können, muss die Berechtigung Sperren auf Zulassen festgelegt sein. Sie benötigen die Berechtigung Änderungen anderer Benutzer entsperren auf Zulassen , um eine von einem anderen Benutzer gehaltene Sperre zu entfernen, wenn Sie nicht über die Schreibberechtigung für den Arbeitsbereich dieses Benutzers verfügen. Weitere Informationen finden Sie unter Standard-TFVC-Berechtigungen.

Syntax

tf lock itemspec /lock:(none|checkout|checkin) 
[/workspace:workspacename] [/recursive] [/login:username,[password]] [/collection:TeamProjectCollectionUrl] 

Parameter

Argumente

Argument

Beschreibung

<itemspec>

Gibt die Datei oder den Ordner an, die gesperrt oder entsperrt werden sollen. Weitere Informationen dazu, wie TFVC analysiert, um zu bestimmen, welche Elemente innerhalb des Bereichs liegen, finden Sie unter Verwenden von Optionen zum Ändern deritemspec Funktionsweise eines Befehls.

Hinweis

Sie können mehrere itemspec Argumente angeben.

<workspacename>

Der vom Benutzer bereitgestellte Wert für die /workspace Option.

<username>

Stellt der Option einen Wert bereit /login . Sie können einen username Wert als oder DOMAIN\usernameusernameangeben.

<TeamProjectCollectionUrl>

Die URL der Projektauflistung, die die Datei oder den Ordner enthält, die Sie sperren oder entsperren möchten, z. B http://myserver:8080/tfs/DefaultCollection. .

Optionen

Option

Beschreibung

/lock

Gibt einen Sperrtyp an oder entfernt eine Sperre aus einem Element. Weitere Informationen finden Sie unter Grundlegendes zu Sperrtypen.

Sperroptionen:

  • None: Entfernt eine Sperre aus einem Element.

  • Checkin: Ermöglicht das Auschecken und Bearbeiten eines Elements in allen Arbeitsbereichen, verhindert jedoch, dass Benutzer Änderungen am Element außerhalb des angegebenen /workspace einchecken, bis Sie die Einchecksperre explizit freigeben. Wenn das angegebene Element in einem anderen Arbeitsbereich gesperrt ist, schlägt der Sperrvorgang fehl.

  • Checkout: Verhindert, dass Benutzer die angegebenen Elemente einchecken oder auschecken, bis Sie die Sperre explizit freigeben. Wenn Benutzer eines der angegebenen Elemente gesperrt haben oder ausstehende Änderungen für eines der Elemente vorhanden sind, schlägt der Sperrvorgang fehl.

/workspace

Gibt den Namen eines anderen Arbeitsbereichs an, in dem die Sperre angewendet werden soll. Standardmäßig wird die Sperre in dem Arbeitsbereich angewendet, in dem Sie sich derzeit befinden.

/login

Gibt den Benutzernamen und das Kennwort an, um den Benutzer bei Azure DevOps zu authentifizieren.

/collection

Gibt die Projektauflistung an.

Bemerkungen

Sie können den Lock-Befehl verwenden, um die TFVC-Serverversion eines Elements vorübergehend einzufrieren, sodass Sie eine ausstehende Änderung einchecken können, ohne Mergekonflikte auflösen zu müssen. Wenn Sie den Zugriff auf ein Element auf dem TFVC-Server dauerhaft verhindern möchten, sollten Sie stattdessen den Befehl Permission verwenden.

Hinweis

Benachrichtigen Sie ihre Teamkollegen, wenn Sie eine Sperre auf ein Element anwenden, erklären Sie, warum Sie dies tun, und schätzen Sie, wann Sie die Sperre entfernen möchten, falls möglich.

Weitere Informationen zur Verwendung des Befehlszeilenprogramms finden Sie unter Verwenden vontf Team Foundation-Versionssteuerungsbefehlen.

Sperren eines Elements

Sie können ein Element mit dem lock -Befehl oder durch Angeben einer lock Option während der Inbetriebnahme mehrerer anderer tf Befehlszeilenhilfsprogramme sperren, einschließlich:

Für add und branchwird die Sperre für den Namespace platziert, in dem das neue Element erstellt wird. Sperren, die rename mit sowohl auf den alten als auch auf den neuen Namespace angewendet werden. Weitere Informationen finden Sie unter Sperren und Entsperren von Ordnern oder Dateien.

Sperrentypen

TFVC bietet zwei Arten von Sperren: checkin und checkout.

Eine Einchecksperre ist weniger restriktiv als eine Auschecksperre. Wenn Sie eine Einchecksperre anwenden, können die Benutzer weiter lokale Änderungen an dem Element in anderen Arbeitsbereichen vornehmen. Die Änderungen können erst eingecheckt werden, wenn Sie die Einchecksperre explizit aus dem Arbeitsbereich entfernen.

Eine Auschecksperre ist restriktiver als eine Check-In-Sperre. Wenn Sie eine Auschecksperre auf eine versionsgesteuerte Datei oder einen ordner anwenden, können Benutzer das Element weder zur Bearbeitung auschecken noch bereits vorhandene ausstehende Änderungen einchecken. Sie können keine Auschecksperre abrufen, wenn derzeit änderungen an einem Element ausstehen.

Weitere Informationen dazu, wann sie eine Auschecksperre anwenden und wann sie eine Check-In-Sperre anwenden müssen, finden Sie unter Grundlegendes zu Sperrtypen.

Funktionsweise der Sperrung

Wenn Sie eine Datei beim Sperren ausgecheckt haben, wird ihr Status geändert, um den neuen Sperrtyp zu enthalten. Wenn die Dateien nicht ausgecheckt sind, wird dem Satz der ausstehenden Arbeitsbereichsänderungen eine Sperränderung hinzugefügt. checkout Im Gegensatz zum Befehl kann lock eine Datei nicht automatisch bearbeitet werden.

Sperren für Ordner sind implizit rekursiv. Wenn Sie einen Ordner sperren, müssen Sie die darin enthaltenen Dateien nicht sperren, es sei denn, Sie möchten die restriktivere Auschecksperre auf eine Datei in einem Ordner anwenden, die über eine Einchecksperre verfügt.

Entsperren eines Elements

Sie können ein gesperrtes Element mit der Option entsperren none . TFVC entsperrt ein Element auch automatisch, wenn Sie ausstehende Änderungen im Arbeitsbereich einchecken.

Mithilfe des Befehls Status können Sie bestimmen, welche Dateien auf dem TFVC-Server gesperrt sind und von wem die Dateien gesperrt wurden.

Beispiele

Das folgende Beispiel verhindert, dass andere Benutzer 314.cs auschecken.

c:\projects>tf lock /lock:checkout 314.cs

Das folgende Beispiel verhindert, dass andere Benutzer Änderungen an 1256.cs einchecken, ermöglicht ihnen jedoch das Auschecken in ihren Arbeitsbereichen.

c:\projects>tf lock /lock:checkin 1256.cs

Das folgende Beispiel verhindert, dass andere Benutzer Änderungen an Elementen im Ordner $/src auf dem TFVC-Server ausstehen.

c:\projects>tf lock /lock:checkout $/src

Im folgenden Beispiel werden alle Dateien im TFVC-Serverordner $/src für das Aus- und Einchecken durch andere Benutzer entsperrt und zur Verfügung gestellt.

c:\projects>tf lock /lock:none $/src