Verstehen von Sperrtypen
Mit dem Befehl Sperren können Sie Änderungen an einer bestimmten Datei oder einem bestimmten Ordner auf dem Quellcodeverwaltungsserver vorübergehend verhindern.Dies kann sinnvoll sein, wenn Sie ein Element im Arbeitsbereich ändern und anschließend einchecken möchten, ohne ggf. Zusammenführungskonflikte auflösen zu müssen.Eine bestimmte Datei oder ein bestimmter Ordner kann jeweils nur von einem einzigen Benutzer gesperrt werden.Wenn Sie den Zugriff auf ein Element dauerhaft verhindern möchten, verwenden Sie stattdessen den Permission Command.
Sperrentypen
Team Foundation stellt zwei Typen von Sperren bereit: Einchecksperren und Auschecksperren.
Lock-in
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.Diese Änderungen können jedoch erst eingecheckt werden, wenn Sie die Einchecksperre explizit bzw. implizit vom Element entfernen, indem Sie die Änderungen an der Datei einchecken.
Auschecksperre
In Visual Studio Team Foundation Server 2012, Check-Out-Sperren sind im Allgemeinen nicht wirksam wegen der lokalen Arbeitsbereiche (siehe Entscheiden zwischen der Verwendung eines lokalen und eines Serverarbeitsbereichs).Check-Out-Sperren sind:
Nicht durchsetzbar, da andere Benutzer möglicherweise lokale Arbeitsbereiche verwenden.
Nicht verfügbar, wenn Sie einen lokalen Arbeitsbereich verwenden.
Gesperrt, wenn ein Mitglied der Sicherheitsgruppe "Administratoren" der Team-Projekt-Auflistung, die asynchrone Checkout für Ihr Team Server-Arbeitsbereiche aktiviert hat.
Eine Auschecksperre wird verhindert, dass Benutzer von Server-Arbeitsbereichen Auschecken und vornehmen von Änderungen an das gesperrte Element in ihren Arbeitsbereichen.Sie können nur im eigenen Arbeitsbereich eine Auschecksperre auf ein Element anwenden, für das ausstehende Änderungen vorhanden sind.
Funktionsweise von Sperren
Wenn eine Datei beim Sperren ausgecheckt ist, wird dem zugehörigen Auscheckdatensatz der neue Sperrentyp hinzugefügt.Wenn die Dateien nicht ausgecheckt werden, wird der Gruppe der ausstehenden Arbeitsbereichsänderungen eine Sperränderung hinzugefügt.Im Gegensatz zum Auscheckbefehl beinhaltet der Sperrbefehl nicht automatisch die Möglichkeit, eine Datei zu bearbeiten.
In Team Foundation wird ein Element automatisch entsperrt, wenn Sie ausstehende Änderungen in den Arbeitsbereich einchecken, in dem es gesperrt ist.Sperren werden auch aufgehoben, wenn die ausstehenden Änderungen einer Datei mit dem Befehl "Rückgängig" rückgängig gemacht werden.
Sperren für Ordner sind implizit rekursiv.Wenn Sie einen Ordner sperren, müssen Sie die enthaltenen Dateien nur dann sperren, wenn Sie eine restriktivere Auschecksperre auf eine Datei in einem Ordner mit einer Einchecksperre anwenden möchten.
Eine bestimmte Datei oder ein bestimmter Ordner kann jeweils nur von einem einzigen Benutzer gesperrt werden.Mit dem Befehl Status können Sie ermitteln, welche Dateien auf dem Server für die Team Foundation-Versionskontrolle gesperrt sind und von wem sie gesperrt wurden.
Eine Sperre kann entweder als eigener Vorgang oder als Teil mehrerer anderer Vorgänge platziert werden.Dazu zählen Umbenennen, Auschecken, Löschen, Löschen rückgängig machen, Zusammenführen, Verzweigen und Zu Quellcodeverwaltung hinzufügen.Wenn Sie ein Element im Rahmen des Hinzufügens zur Quellcodeverwaltung oder eines Verzweigungsvorgangs sperren, wendet Team Foundation die Sperre auf dem Serverpfad an, in dem das neue Element erstellt wird.Diese verhindert, dass ein anderer Benutzer eine Datei zu demselben Speicherort hinzufügt oder verzweigt.Wenn Sie ein Element mit dem Befehl "Rename" (Umbenennen) sperren, werden sowohl der alte als auch der neue Serverpfad gesperrt.
Entsperren eines Elements
Sie können ein Element mit dem Entsperrbefehl (Unlock) explizit entsperren oder während des Eincheckens implizit entsperren.Wenn Sie ausstehende Änderungen in ein gesperrtes Element einchecken, werden ggf. vorhandene Sperren von Team Foundation aufgehoben.
Hinweis |
---|
Standardmäßig wird die Berechtigung UnlockOther nur Administratoren gewährt.Wenn Sie über die Berechtigung "UnlockOther" verfügen, können Sie die Sperre eines Elements im Arbeitsbereich eines anderen Benutzers mit dem Lock Command aufheben. |