Crie repositórios TFVC

Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019

Importante

TFVC é suportado apenas por pipelines clássicos e não suporta YAML.

Escolha o repositório a ser compilado

Ao editar um pipeline que usa um repositório TFVC, você tem as seguintes opções.

  • Limpar
  • Especificar caminho local
  • Fontes de etiquetas

Nome do repositório

Nome do repositório TFVC.

Mapeamentos (espaço de trabalho)

Inclua com um valor de tipo de Mapear somente as pastas que seu pipeline de compilação exige. Se uma subpasta de uma pasta mapeada contiver arquivos que o pipeline de compilação não exige, mapeie-a com um valor de tipo de Cloak.

Certifique-se de mapear todas as pastas que contêm arquivos que seu pipeline de compilação exige. Por exemplo, se você adicionar outro projeto, talvez seja necessário adicionar outro mapeamento ao espaço de trabalho.

Pastas de capa que você não precisa. Por padrão, a pasta raiz do projeto é mapeada no espaço de trabalho. Essa configuração resulta no agente de compilação baixando todos os arquivos na pasta de controle de versão do seu projeto. Se essa pasta contiver muitos dados, sua compilação poderá desperdiçar recursos do sistema de compilação e retardar seu pipeline de compilação baixando grandes quantidades de dados que não são necessários.

Ao remover projetos, procure mapeamentos que possam ser removidos do espaço de trabalho.

Se esta for uma compilação de CI, na maioria dos casos, você deve certificar-se de que esses mapeamentos correspondam às configurações de filtro do seu gatilho de CI na guia Triggers.

Para obter mais informações sobre como otimizar um espaço de trabalho TFVC, consulte Otimizar seu espaço de trabalho.

Limpe o repositório local no agente

Você pode executar diferentes formas de limpeza do diretório de trabalho do seu agente auto-hospedado antes que uma compilação seja executada.

Em geral, para um desempenho mais rápido de seus agentes auto-hospedados, não limpe o repositório. Neste caso, para obter o melhor desempenho, certifique-se de que também está a criar de forma incremental, desativando qualquer opção Limpar da tarefa ou ferramenta que está a utilizar para compilar.

Se você precisar limpar o repositório (por exemplo, para evitar problemas causados por arquivos residuais de uma compilação anterior), suas opções estão abaixo.

Nota

A limpeza não é relevante se você estiver usando um agente hospedado pela Microsoft porque você recebe um novo agente toda vez nesse caso.

Se você quiser limpar o repositório, selecione true e, em seguida, selecione uma das seguintes opções:

  • Fontes: O pipeline de compilação executa um desfazer de quaisquer alterações e queima o espaço de trabalho atual em $(Build.SourcesDirectory).

  • Fontes e diretório de saída: mesma operação que a opção Fontes acima, além de: Exclui e recria $(Build.BinariesDirectory).

  • Diretório de códigos-fonte: exclui e recria $(Build.SourcesDirectory).

  • Todos os diretórios de compilação: exclui e recria $(Agent.BuildDirectory).

Desencadeadores de IC

Selecione Ativar integração contínua na guia Gatilhos para habilitar esse gatilho se quiser que a compilação seja executada sempre que alguém fizer check-in de código.

Gatilho de IC.

Alterações em lote

Marque essa caixa de seleção se você tiver muitos membros da equipe carregando alterações com frequência e quiser reduzir o número de compilações que está executando. Se você selecionar essa opção, quando uma compilação estiver em execução, o sistema aguardará até que a compilação seja concluída e, em seguida, enfileirará outra compilação de todas as alterações que ainda não foram criadas.

Você pode agrupar alterações em lote e criá-las juntas.

Filtros de caminho

Selecione os caminhos de controle de versão que deseja incluir e excluir. Na maioria dos casos, você deve certificar-se de que esses filtros são consistentes com seus mapeamentos TFVC. Você pode usar filtros de caminho para reduzir o conjunto de arquivos que deseja acionar uma compilação.

Sugestões:

  • Os caminhos são sempre especificados em relação à raiz do espaço de trabalho.
  • Se você não definir filtros de caminho, a pasta raiz do espaço de trabalho será implicitamente incluída por padrão.
  • Se você excluir um caminho, também não poderá incluí-lo, a menos que o qualifique para uma pasta mais profunda. Por exemplo, se você excluir /tools , poderá incluir /tools/trigger-runs-on-these
  • A ordem dos filtros de caminho não importa.

Check-in fechado

Pode utilizar o registo protegido como uma forma de proteção contra alterações interruptivas.

Por predefinição, a opção Utilizar mapeamentos de áreas de trabalho para filtros está selecionada. As compilações são acionadas sempre que é registada uma alteração num caminho especificado nos mapeamentos de origem.

Caso contrário, pode desmarcar esta caixa de verificação e especificar os caminhos no acionador.

Como isso afeta seus desenvolvedores

Quando os desenvolvedores tentam fazer check-in, eles são solicitados a criar suas alterações.

Prompt de check-in fechado

Em seguida, o sistema cria um conjunto de prateleiras e constrói-o.

Nota

Se você receber um erro como The shelveset _Build_95;Build\6bc8a077-3f27-4936-82e6-415fbd53ba07 could not be found for check-in, verifique a configuração Limitar o escopo de autorização de trabalho ao projeto atual para pipelines não liberados e verifique se ele não está habilitado.

Para obter detalhes sobre a experiência de check-in fechado, consulte Check-in em uma pasta controlada por um pipeline de compilação de check-in fechado.

Opção para executar compilações de CI

Por padrão, as compilações de CI não são executadas depois que o processo de check-in fechado é concluído e as alterações são verificadas.

No entanto, se você quiser que as compilações de CI sejam executadas após um check-in fechado, marque a caixa de seleção Executar gatilhos de CI para alterações confirmadas . Quando você faz isso, o pipeline de compilação não adiciona ***NO_CI*** à descrição do conjunto de alterações. Como resultado, as compilações de CI afetadas pelo check-in são executadas.

Algumas outras coisas a saber

  • Verifique se as pastas incluídas no gatilho também estão incluídas nos mapeamentos do espaço de trabalho.
  • Você pode executar compilações fechadas em um agente hospedado pela Microsoft ou em um agente auto-hospedado.

FAQ

Recebo o seguinte erro ao executar um pipeline:

The shelveset <xyz> could not be found for check-in

  • Seu escopo de autorização de trabalho está definido para coleta? Os repositórios TFVC geralmente estão espalhados pelos projetos da sua coleção. Você pode estar lendo ou gravando em uma pasta que só pode ser acessada quando o escopo é toda a coleção. Você pode definir isso nas configurações da organização ou na configuração do projeto na guia Pipelines .

Recebo o seguinte erro ao executar um pipeline:

The underlying connection was closed: An unexpected error occurred on a receive. ##[error]Exit code 100 returned from process: file name 'tf', arguments 'vc workspace /new /location:local /permission:Public

  • Isso geralmente é um erro intermitente causado quando o serviço está enfrentando problemas técnicos. Execute novamente o pipeline.

O que é scorch?

Scorch é uma ferramenta elétrica TFVC que garante o controle do código-fonte no servidor e no disco local são idênticos. Consulte Ferramentas Elétricas do Microsoft Visual Studio Team Foundation Server 2015.