Comando Lock (Controle de Versão do Team Foundation)

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

Visual Studio 2019 | Visual Studio 2022

O comando TFVC (Controle de Versão do Team Foundation) lock bloqueia ou desbloqueia um arquivo ou pasta. O comando nega ou restaura o direito dos usuários de marcar um item para edição em um workspace diferente ou marcar em alterações pendentes em um item de um workspace diferente.

Pré-requisitos

Para usar o comando lock, você deve ter a permissão deBloqueio como Permitir. Você precisará da permissão Desbloquear outras alterações do usuário definida como Permitir para remoção de um bloqueio mantido por outro usuário se você não tiver a permissão de Gravação para o workspace desse usuário. Para saber mais, confira Permissões padrão do TFVC.

Sintaxe

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

Parâmetros

Argumentos

Argument

Descrição

<itemspec>

Identifica o arquivo ou a pasta a ser bloqueado ou desbloqueado. Para obter mais informações sobre como o TFVC analisa o itemspec para determinar quais itens estão dentro do escopo, consulte Usar comandos de controle de versão do Team Foundation.

Observação

Você pode especificar mais de um argumento itemspec.

<workspacename>

O valor fornecido pelo usuário para a opção /workspace.

<username>

Mostra um valor para a opção /login. Você pode especificar um valor username como DOMAIN\username ou username.

<TeamProjectCollectionUrl>

A URL da coleção de projetos que contém o arquivo ou a pasta que você deseja bloquear ou desbloquear, por exemplo http://myserver:8080/tfs/DefaultCollection.

Opções

Opção

Descrição

/lock

Especifica um tipo de bloqueio ou remove um bloqueio de um item. Para obter mais informações, consulte Noções básicas sobre tipos de bloqueio.

Opções de bloqueio:

  • None: remove um bloqueio de um item.

  • Checkin: permite que um item seja verificado e editado em todos os workspaces, mas impede que os usuários verifiquem as alterações no item fora do especificado /workspace até que você libere explicitamente o bloqueio de check-in. Se o item especificado estiver bloqueado em qualquer outro workspace, a operação de bloqueio falhará.

  • Checkout: impede que os usuários faça check-in ou faça check-out dos itens especificados até que você libere explicitamente o bloqueio. Se os usuários bloquearem qualquer um dos itens especificados ou se houver alterações pendentes em qualquer um dos itens, a operação de bloqueio falhará.

/workspace

Especifica o nome de um workspace diferente no qual aplicar o bloqueio. Por padrão, o bloqueio é aplicado no workspace no qual você está atualmente.

/login

Especifica o nome de usuário e a senha para autenticar o usuário com o Azure DevOps.

/collection

Especifica a coleção de projetos.

Comentários

É possível usar um bloqueio para congelar temporariamente a versão do servidor de um item para que você possa fazer check-in de uma alteração pendente sem ter de resolver conflitos de mesclagem. Se você quiser impedir permanentemente o acesso a um item no servidor TFVC, use o comandoPermission.

Observação

Como cortesia para seus colegas de equipe, notifique-os quando você aplicar um bloqueio a um item, explique por que você está fazendo isso e estime quando planeja remover o bloqueio, se puder.

Para obter mais informações sobre como usar o utilitário de linha de comando tf, consulte Usar comandos de Controle de Versão do Team Foundation.

Como bloquear um item

Você pode bloquear um item usando o comando lock ou especificando uma opção de lock durante a comissão de vários outros comandos do utilitário de linha de comando tf, incluindo:

Para add e branch, o bloqueio é colocado no namespace onde o novo item será criado. Bloqueios colocados com rename aplicar ambos aos namespaces antigos e novos. Para obter mais informações, consulte Bloquear e desbloquear pastas ou arquivos.

Tipos de bloqueio

O TFVC fornece dois tipos de bloqueios: checkin e checkout.

Um bloqueio de check-in é menos restritivo que um bloqueio de check-out. Quando você aplicar um bloqueio de check-in, os usuários poderão continuar fazendo alterações locais ao item em outros workspaces. As alterações não podem ser verificadas até que você remova explicitamente o bloqueio de check-in do workspace.

Um bloqueio de check-in é mais restritivo que um bloqueio de check-out. Quando você aplica um bloqueio de check-out a um arquivo ou pasta controlado por versão, os usuários não podem fazer check-out do item para edição nem fazer check-in de alterações pendentes pré-existentes. Você não poderá adquirir um bloqueio de check-out se houver alterações pendentes em um item no momento.

Para obter mais informações sobre quando aplicar um bloqueio marcar e quando aplicar um bloqueio de marcar, consulte Entender tipos de bloqueio.

Como o bloqueio funciona

Se você tiver um arquivo com check-out ao bloqueá-lo, seu status será modificado para conter o novo tipo de bloqueio. Se os arquivos não forem verificados, uma alteração de bloqueio será adicionada ao conjunto de alterações pendentes do workspace. Ao contrário do comando checkout, lock não torna automaticamente um arquivo editável.

Bloqueios em pastas são implicitamente recursivos. Se você bloquear uma pasta, não terá de bloquear os arquivos contidos nela a menos que queira aplicar o bloqueio de check-out mais restritivo a um arquivo em uma pasta que tenha um bloqueio de check-in.

Desbloquear um item

Você pode desbloquear um item bloqueado usando a opção none. O TFVC também desbloqueia um item automaticamente quando você fizer o check-in das alterações pendentes no workspace onde ele é bloqueado.

Você pode determinar quais arquivos estão bloqueados no servidor TFVC e por quem os arquivos foram bloqueados usando o comando Status.

Exemplos

O exemplo a seguir impede que outros usuários confiram o 314.cs.

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

O exemplo a seguir impede que outros usuários verifiquem as alterações no 1256.cs, mas permite que eles façam check-out em seus workspaces.

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

O exemplo a seguir impede que outros usuários pendam alterações em todos os itens na pasta $/src no servidor TFVC.

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

O exemplo a seguir desbloqueia e disponibiliza todos os arquivos na pasta de servidor TFVC $/src para fazer o check-in e check-out por outros usuários.

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