Comando workfold (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 workfold
do TFVC (Controle de Versão do Team Foundation) cria, modifica ou exibe informações sobre os mapeamentos entre as pastas do workspace e as pastas que estão no servidor do Azure DevOps para TFVC.
Pré-requisitos
Para usar o comando workfold
, você precisa ser proprietário do workspace especificado ou implícito. Outra opção é ter a permissão global para Administrar workspaces definida como Permitir. Para saber mais, consulte Permissões padrão do TFVC.
Sintaxe
tf workfold <local-folder> [/login:<username>,[<password>]]
tf workfold [/workspace:<workspace-name>] [/login:<username>,[<password>]]
tf workfold [/collection:<team-project-collection-url>] [/workspace:<workspace-name>] [/login:<username>,[<password>]]
<server-folder>
tf workfold [/map <server-folder> <local-folder>] [/collection:<team-project-collection-url>]
[/workspace:<workspace-name>][/login:<username>,[<password>]
tf workfold /unmap [/collection:<team-project-collection-url>] [/workspace:<workspace-name>]
[/recursive] (<server-folder>|<local-folder>) [/login:<username>,[<password>]]
tf workfold /cloak
<server-folder> [/workspace:<workspace-name>] [/collection:<team-project-collection-url>] [/login:<username>,[<password>]]
tf workfold /decloak <server-folder>
[/workspace:<workspace-name>] [/collection:<team-project-collection-url>][/login:<username>,[<password>]]
Parâmetros
Veja nas seções a seguir a descrição dos argumentos e das opções do comando workfold
.
Argumentos
Argument
Descrição
<workspace-name>
Especifica o nome do workspace em que o comando opera com a opção /workspace
.
<server-folder>
Especifica o nome de uma pasta do servidor do Azure DevOps.
<local-folder>
Especifica o nome de uma pasta local.
<team-project-collection-url>
A URL da coleção de projetos que contém as pastas que você quer comparar com as pastas do servidor; por exemplo, https://myserver:8080/tfs/DefaultCollection/
.
<username>
Mostra um valor para a opção /login
. É possível especificar esse valor como DOMAIN\<username>
ou <username>
.
<password>
Mostra um valor para a opção /login
.
Opções
Opção
Descrição
/workspace
Especifica o nome do workspace em que você vai trabalhar.
/map
Especifica uma associação entre uma pasta local e a pasta de servidor do Azure DevOps. Por padrão, o comando workfold
usa essa opção, mesmo se não tiver especificada; a menos que /unmap
, /cloak
ou /decloak
estejam especificados.
/unmap
Especifica qual mapeamento de pasta deve ser removido do workspace.
/cloak
Especifica que a pasta deve ser excluída de todas as ações do controle de versão realizadas no workspace.
/decloak
Desencobre uma pasta para que seja recuperada no workspace.
/collection
Especifica a coleção de projetos.
/login
Especifica o nome de usuário e a senha para autenticar o usuário com o Azure DevOps.
Comentários
É possível usar o comando workfold
do utilitário de linha de comando tf
para criar e editar mapeamentos de workspace, Um mapeamento de espaço de trabalho cria uma pasta do lado do cliente na qual todos os arquivos e subpastas na pasta do servidor de DevOps do Azure são recuperados quando você executa uma tf
get
operação. A operação get
não funcionará se a pasta no lado do cliente estiver encoberta.
Também é possível usar um caractere curinga de asterisco (*) para mapear uma pasta do Azure DevOps Server e seus itens imediatos para o workspace local. Esse procedimento é conhecido como mapeamento de pasta única.
Para saber mais sobre como usar o utilitário de linha de comando tf
, confira Usar comandos de controle de versão do Team Foundation.
Opções para mapeamento de workspace
O mapeamento de workspace é uma lista de itens ativos e encobertos. É possível adicionar itens de servidor do Azure DevOps à lista mapeada no workspace com a opção /map
. Você também pode excluir um item do workspace de forma explícita pela opção /cloak
. Só é possível encobrir itens que têm um pai mapeado. Esse procedimento é um jeito eficiente de aumentar a velocidade das operações get
em lote e conservar espaço em disco.
Use o encobrimento com discrição. Para evitar problemas de compilação e integração, encubra apenas os itens que você sabe que estão fora do escopo de seus projetos atuais e futuros, como imagens e arquivos de documentação externos.
É possível usar as opções /unmap
e /decloak
para excluir seletivamente entradas mapeadas e encobertas no mapeamento do workspace.
Como os mapeamentos de workspace são aplicados
Por padrão, os mapeamentos de workspace são aplicados recursivamente. Quando você mapeia uma pasta local para uma pasta de servidor do Azure DevOps, o sistema cria implicitamente um mapeamento entre todas as subpastas atuais e futuras.
Por exemplo, imagine que você mapeou $/projects para C:\projects. Em seguida, você adicionou um projeto chamado de $/projects/project_one e executou o comando get
no workspace. Nesse cenário, o TFVC cria automaticamente uma pasta de trabalho local chamada de project_one no diretório C:\projects.
O exemplo a seguir usa um caractere curinga de asterisco (*) para mapear uma pasta de servidor e seus itens imediatos para o workspace local:
tf workfold $/projects/MyTeamProject/* C:\MyLocalWorkfold\MyTeamProject
O exemplo a seguir usa o comando workfold
para substituir o mapeamento criado automaticamente entre $/projects/project_one e C:\projects\project_one:
tf workfold $/projects/project_one C:\DifferentWorkfold
Mapeamentos encobertos
Mapeamentos de pastas desencobertas localizadas abaixo de uma encoberta na hierarquia do controle de versão podem ser mapeados para o workspace local.
Exemplos
O exemplo a seguir mostra os mapeamentos do workspace que inclui c:\projects:
c:\projects>tf workfold
O exemplo a seguir encobre a pasta c:\projects\lib:
c:\projects>tf workfold /cloak c:\projects\lib
O exemplo a seguir exibe o mapeamento do arquivo local word.cs:
c:\projects>tf workfold word.cs
O exemplo a seguir mapeia a pasta C:\DifferentWorkfold para a pasta de servidor do Azure DevOps $/projects/project_one e substitui o mapeamento de workspace anterior para a pasta de servidor do Azure DevOps $/projects/project_one:
c:\projects>tf workfold $/projects/project_one C:\DifferentWorkfold