Compreender tipos de bloqueio
Você pode usar o comando lock para impedir alterações temporariamente em um arquivo ou pasta específicos no servidor de controle do código-fonte. Isso poderá ser útil se você quiser alterar um item em seu espaço de trabalho e depois fazer seu check-in sem ser forçado a resolver qualquer conflito de mesclagem. Apenas um usuário por vez pode reter um bloqueio em um arquivo ou uma pasta específicos. Se você quiser impedir o acesso a um item de um modo persistente, deverá usar o Permission Command.
Tipos de bloqueio
O Team Foundation fornece dois tipos de bloqueios: bloqueios de check-in e bloqueios de check-out.
Bloqueio de check-in
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 espaços de trabalho. Mas essas alterações não poderão ser submetidas as check-in até que você remova explicitamente o bloqueio de check-in do item ou remova-o implicitamente fazendo check-in de suas alterações no arquivo.
Bloqueio de check-out
No Visual Studio Team Foundation Server 2012, os bloqueios de check-out geralmente não são eficientes devido aos espaços de trabalho locais (consulte Decidir entre usar um espaço de trabalho local ou em servidor). Especificamente, os bloqueios de check-out:
Não são aplicáveis porque outros usuários podem usar espaços de trabalho locais.
Não estarão disponíveis se você estiver usando um espaço de trabalho local.
São desabilitados se um membro do grupo de segurança Administradores de sua coleção de projetos de equipe habilitou o check-out assíncrono para os espaços de trabalho do servidor de sua equipe.
Um bloqueio de check-out impede os usuários que estão usando os espaços de trabalho do servidor de fazer check-out e fazer alterações no item bloqueado nos espaços de trabalho. Você não pode aplicar um bloqueio de check-out a um item para o qual exista alterações pendentes em qualquer espaço de trabalho diferente do seu.
Como o bloqueio funciona
Se o check-out de um arquivo for feito quando você bloqueá-lo, seu registro de check-out será modificado para conter o novo tipo de bloqueio. Se os arquivos não forem submetidos a check-out, uma alteração de "bloqueio" será acrescentada ao conjunto de alterações pendentes do espaço de trabalho. Ao contrário do comando Fazer Check-out, o comando lock não torna um arquivo automaticamente editável.
O Team Foundation desbloqueia um item automaticamente quando você fizer o check-in das alterações pendentes no espaço de trabalho onde ele é bloqueado. Os bloqueios também são liberados quando as alterações pendentes de um arquivo são desfeitas usando o comando undo.
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.
Apenas um usuário por vez pode reter um bloqueio em um arquivo ou uma pasta específicos. Você pode saber quais arquivos estão bloqueadas no servidor do Controle de versão do Team Foundation e por quem eles foram bloqueados usando o Comando Status.
Um bloqueio pode ser colocado como uma operação isolada ou como parte de várias outras operações. Isso inclui renomear, fazer check-out, excluir, desfazer exclusão, mesclar, ramificar e adicionar ao controle do código-fonte. Quando você bloquear um item como parte de uma adição ao controle do código-fonte ou operação de ramificação, o Team Foundation coloca o bloqueio no caminho do servidor onde o novo item será criado. Isso impede que outro usuário adicione ou ramifique um arquivo no mesmo local. Quando você bloquear um item usando o comando rename, os caminhos de servidor antigos e novos são bloqueados.
Desbloqueando um item
Você pode desbloquear um item explicitamente usando o comando unlock ou implicitamente ao fazer check-in. Quando você fizer o check-in das alterações pendentes em um item bloqueado, o Team Foundation removerá qualquer bloqueio.
Dica
Por padrão, a permissão UnlockOther é concedida apenas a administradores.Se você tiver a permissão UnlockOther, você poderá remover um bloqueio de um item no espaço de trabalho de outro usuário usando o Lock Command.
Consulte também
Conceitos
Criar e trabalhar com espaços de trabalho