Udostępnij za pośrednictwem


Zablokuj polecenie (Kontrola wersji serwera Team Foundation)

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

Visual Studio 2019 | Visual Studio 2022

Polecenie Kontrola wersji serwera Team Foundation (TFVC) lock blokuje lub odblokowuje plik lub folder. Polecenie odrzuca lub przywraca prawo użytkowników do wyewidencjonowania elementu do edycji w innym obszarze roboczym lub zaewidencjonowania oczekujących zmian w elemencie z innego obszaru roboczego.

Wymagania wstępne

Aby użyć lock polecenia, musisz mieć uprawnienie Blokada ustawione na Zezwalaj. Jeśli nie masz uprawnień do zapisu dla obszaru roboczego tego użytkownika, musisz ustawić uprawnienie Odblokowywanie zmian innego użytkownika na wartość Zezwalaj na usunięcie blokady przechowywanej przez innego użytkownika. Aby uzyskać więcej informacji, zobacz Domyślne uprawnienia kontroli wersji serwera Team Foundation.

Składnia

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

Parametry

Argumenty

Argument

Opis

<itemspec>

Identyfikuje plik lub folder do zablokowania lub odblokowania. Aby uzyskać więcej informacji o sposobie analizowania kontrolera TFVC w itemspec celu określenia, które elementy znajdują się w zakresie, zobacz Use options to modify how a command functions (Używanie opcji do modyfikowania sposobu działania polecenia).

Uwaga

Można określić więcej niż jeden itemspec argument.

<workspacename>

Wartość podana /workspace przez użytkownika dla opcji.

<username>

Udostępnia wartość /login opcji. Wartość można określić username jako DOMAIN\username lub username.

<TeamProjectCollectionUrl>

Adres URL kolekcji projektów, która zawiera plik lub folder, który chcesz zablokować lub odblokować, na przykład http://myserver:8080/tfs/DefaultCollection.

Opcje

Opcja

Opis

/lock

Określa typ blokady lub usuwa blokadę z elementu. Aby uzyskać więcej informacji, zobacz Omówienie typów blokad.

Opcje blokady:

  • None: usuwa blokadę z elementu.

  • Checkin: umożliwia wyewidencjonowanie i edytowanie elementu we wszystkich obszarach roboczych, ale uniemożliwia użytkownikom ewidencjonowanie zmian w elemencie poza określonym /workspace elementem do momentu jawnego zwolnienia blokady zaewidencjonowania. Jeśli określony element jest zablokowany w dowolnym innym obszarze roboczym, operacja blokowania zakończy się niepowodzeniem.

  • Checkout: Uniemożliwia użytkownikom zaewidencjonowanie lub wyewidencjonowanie określonych elementów do momentu jawnego zwolnienia blokady. Jeśli użytkownicy zablokowali dowolny z określonych elementów lub jeśli oczekujące zmiany istnieją względem dowolnego z elementów, operacja blokowania zakończy się niepowodzeniem.

/workspace

Określa nazwę innego obszaru roboczego, w którym ma być stosowana blokada. Domyślnie blokada jest stosowana w obszarze roboczym, w którym jesteś obecnie.

/login

Określa nazwę użytkownika i hasło do uwierzytelniania użytkownika w usłudze Azure DevOps.

/collection

Określa kolekcję projektów.

Uwagi

Możesz użyć polecenia blokady, aby tymczasowo zablokować wersję serwera TFVC elementu, aby można było zaewidencjonować oczekującą zmianę bez konieczności rozwiązywania konfliktów scalania. Jeśli chcesz trwale uniemożliwić dostęp do elementu na serwerze TFVC, należy zamiast tego użyć polecenia Uprawnienie.

Uwaga

Dzięki uprzejmości kolegów z drużyny powiadom ich, gdy zastosujesz blokadę do elementu, wyjaśnij, dlaczego to robisz, i szacuj, kiedy planujesz usunąć blokadę, jeśli możesz.

Aby uzyskać więcej informacji na temat korzystania z tf narzędzia wiersza polecenia, zobacz Use Team Foundation version control commands (Używanie poleceń kontroli wersji programu Team Foundation).

Jak zablokować element

Element można zablokować przy użyciu lock polecenia lub określając lock opcję podczas wykonywania kilku innych tf poleceń narzędzia wiersza polecenia, w tym:

W przypadku add elementów i branchblokada jest umieszczana w przestrzeni nazw, w której zostanie utworzony nowy element. Blokady umieszczone z zastosowaniem rename zarówno do starych, jak i nowych przestrzeni nazw. Aby uzyskać więcej informacji, zobacz Blokowanie i odblokowywanie folderów lub plików.

Typy blokad

Funkcja TFVC udostępnia dwa typy blokad: checkin i checkout.

Blokada zaewidencjonu jest mniej restrykcyjna niż blokada wyewidencjonowa. Po zastosowaniu blokady zaewidencjonowania użytkownicy mogą nadal wprowadzać zmiany lokalne w elemencie w innych obszarach roboczych. Zmiany nie mogą być zaewidencjonowane, dopóki nie usuniesz jawnie blokady zaewidencjonowej z obszaru roboczego.

Blokada wyewidencjonowa jest bardziej restrykcyjna niż blokada zaewidencjonowa. Po zastosowaniu blokady wyewidencjonowania do pliku lub folderu kontrolowanego przez wersję użytkownicy nie mogą wyewidencjonować elementu do edycji ani zaewidencjonować wstępnie istniejących oczekujących zmian. Nie można uzyskać blokady wyewidencjonowania, jeśli obecnie istnieją jakiekolwiek oczekujące zmiany w elemencie.

Aby uzyskać więcej informacji o tym, kiedy zastosować blokadę wyewidencjonowania i kiedy zastosować blokadę zaewidencjonowania, zobacz Omówienie typów blokad.

Jak działa blokowanie

Jeśli plik został wyewidencjonowany podczas jego blokowania, jego stan zostanie zmodyfikowany tak, aby zawierał nowy typ blokady. Jeśli pliki nie są wyewidencjonowane, zostanie dodana zmiana blokady do zestawu oczekujących zmian obszaru roboczego. checkout W przeciwieństwie do polecenia polecenie lock nie powoduje automatycznego edytowania pliku.

Blokady folderów są niejawnie rekursywne. Jeśli zablokujesz folder, nie musisz blokować plików, które zawiera, chyba że chcesz zastosować bardziej restrykcyjną blokadę wyewidencjonowania do pliku w folderze, który ma blokadę zaewidencjonowania.

Odblokowywanie elementu

Zablokowany element można odblokować przy użyciu none opcji . Funkcja TFVC odblokowuje również element automatycznie po zaewidencjonowyniu oczekujących zmian w obszarze roboczym.

Można określić, które pliki są zablokowane na serwerze TFVC i przez kogo pliki zostały zablokowane za pomocą polecenia Stan.

Przykłady

Poniższy przykład uniemożliwia innym użytkownikom wyewidencjonowanie 314.cs.

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

Poniższy przykład uniemożliwia innym użytkownikom ewidencjonowanie zmian w 1256.cs , ale umożliwia im wyewidencjonowanie ich w swoich obszarach roboczych.

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

Poniższy przykład uniemożliwia innym użytkownikom oczekiwanie na zmiany wszystkich elementów w folderze $/src na serwerze TFVC.

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

Poniższy przykład odblokowuje i udostępnia wszystkie pliki w folderze serwera $/src TFVC na potrzeby wyewidencjonowania i zaewidencjonowania przez innych użytkowników.

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