Definir uma compilação Gated Check-In para validar as alterações

Quando um desenvolvedor verifica as alterações que quebra a compilação, o resultado pode ser um problema significativo para pequenas equipes. O custo para equipes maiores pode ser caro, conforme medido por perda de produtividade e atrasos na programação.

Você pode criar uma definição de compilação de check-in gated proteger alguns ou todos os seus códigos com base em relação a esse problema.

Neste tópico

  • Como o Check-In Gated constrói afetam sua equipe

  • Definir uma compilação de Check-In Gated

  • Diretrizes para configurações na guia processo

  • Como o Check-in Gated amplia são executados.

    • Automaticamente a execução Gated compilações de Check-in

    • Executam manualmente Gated compilações de Check-in e compilações de Private

Como o Check-In Gated constrói afetam sua equipe

Quando uma compilação gated check-in é criada, as alterações que o desenvolvedor envia são colocadas em um shelveset e criadas automaticamente no seu sistema de compilação. A compilação deve ser bem-sucedida para o processo de check-in ser concluída. Para obter mais informações, consulte Check-In alterações pendentes que são controlados por um Check-in Gated construir.

Se alguns dos seus usuários devem ignorar gated check-in, você pode definir o Substituir o check-in validação por compilação permissão para Permitir para um grupo de usuários. Para obter mais informações, consulte Permissões de Team Foundation Server.

Definir uma compilação de Check-In Gated

Permissões necessárias

Para executar este procedimento, seu Editar definição de compilação permissão deve ser definida Permitir. Para obter mais informações, consulte Permissões de Team Foundation Server.

Para definir uma compilação de check-in gated

  1. Em Team Explorer, clique em um projeto de equipe.

  2. Sobre o Build menu, clique em Nova definição de compilação.

    O Nova definição de compilação janela é exibida com o Geral guia exibida.

  3. No nome de definição de compilação , digite um nome.

  4. Sobre o disparador , clique em Check-in Gated aceitar check-ins somente se as alterações enviadas mesclagem e compilar com êxito.

  5. Clique o espaço de trabalho guia.

    O pastas de trabalho tabela aparece. Esta tabela lista as pastas de controle de versão para o projeto de equipe para o qual você está criando a definição de compilação e mapeá-las para pastas locais em que o agente de compilação.

    A pasta local em que o agente de compilação aparece no A pasta Build do agente coluna. Você pode incluir o $(SourceDir) token para indicar que você deseja baixar os arquivos para fontes subdiretório. o agente de compilação

    Para copiar um espaço de trabalho existente à lista de pastas de trabalho, clique em Cópia de espaço de trabalho existente para abrir o Selecionar uma área de trabalho caixa de diálogo.

    Dica

    Certifique-se de que qualquer pasta de controle de versão que você especificar para esta definição também não está especificada na espaço de trabalho guia de qualquer outro gated definições de compilação de check-in. Caso contrário, quando uma pessoa verifica os arquivos a essas pastas, o sistema exige para decidir qual construir a definição de fila.

  6. Clique o processo guia e, em seguida, definir a compilação parâmetros do processo de forma que garante que o check-ins atendem aos padrões de qualidade de código específico da sua equipe.

    Para uma base de código grande produzida por uma equipe grande, você deve equilibrar esse objetivo de validar a qualidade de código com o objetivo de evitar atrasos desnecessários para desenvolvedores. Para obter mais informações, consulte as diretrizes para configurações na guia processo posteriormente neste tópico.

  7. Clique o Construir padrões e Política de retenção guias e, em seguida, aplique quaisquer configurações são apropriadas em cada guia.

    Para obter mais informações, consulte Criar uma definição de compilação básico.

Diretrizes para configurações na guia processo

Para minimizar o tempo necessário para processar a compilação, você deve considerar seguindo estas diretrizes quando você especifica valores para os parâmetros de processo de compilação do processo guia.

Nó necessário

  • Itens para o Build, as configurações para construir: Se você deixar esse parâmetro vazio, a plataforma padrão e a configuração é usada para cada solução e projeto. Para otimizar o desempenho, compatíveis com as diretrizes a seguintes:

    • Se um par de configuração de plataforma baseia-se mais rapidamente do que outros pares, especifique-o neste parâmetro.

    • Especifica pares de configuração de plataforma tão poucos quanto possível.

Nó básico

  • Testes de Automated: Se seu código deve passar determinados testes sejam válidas, configure um teste executar para executar esses testes. Quando você configura a execução de teste, certifique-se de que você filtrar por categorias ou de prioridade para que você está executando os testes que você mais precisa. Para obter mais informações, consulte Definir uma compilação usando o modelo padrão.

  • Limpar o espaço de trabalho: Defina esse valor como Nenhum (recomendado) ou saídas. No entanto, alguns tipos de defeitos são mais probabilidade de ser perdidas se o espaço de trabalho não é limpo. Para obter mais informações, consulte Definir uma compilação usando o modelo padrão.

  • Realizar análise de código: Defina esse valor como nunca.

  • Origem e as configurações do servidor de símbolo, fontes de índice: Defina esse valor como False.

Nó avançado

  • Configurações do agente

    • Filtro de nome ou filtro de marcas: Use um nome de agente de compilação ou de uma marca para vincular a definição de compilação para um agente de compilação é projetado especificamente para esta compilação de execução. O agente de compilação deve ser executado em uma máquina de compilação com o hardware é suficientemente poderoso para processar esta compilação com rapidez suficiente para atender às expectativas de desempenho da sua equipe.

      Por exemplo, os desenvolvedores da sua equipe podem não se importar espera de 15 minutos para a compilação concluir. Mas os desenvolvedores não provavelmente aceitar a necessidade de esperar oito horas antes que eles podem determinar se seu código foi verificada com êxito.

    • Tempo de execução máximo: Defina esse valor para um número razoavelmente pequeno para compilações de integração contínua. Por exemplo, 15 minutos pode funcionar para sua equipe, mas oito horas provavelmente é muito longo.

  • Copiar as saídas para a pasta suspensa: O sistema executa esse valor como False, mesmo se você defini-la True.

  • Criar o Item de trabalho em caso de falha: O sistema executa esse valor como False, mesmo se você defini-la True.

  • Fontes de rótulo: Defina esse valor como False.

Para obter mais informações sobre como definir os valores de compilação dos parâmetros de processo, consulte Definir uma compilação usando o modelo padrão.

Como o Check-in Gated amplia são executados.

Cada definição de compilação de check-in gated pode ter apenas uma execução construir uma vez. Portanto, as equipes de grandes e ativos são mais prováveis desenvolver uma fila grande de compilações gated check-in. Práticas recomendadas a seguir podem ajudar sua equipe a evitar o bloqueio de progresso:

  • Dedicar um computador que tenha o potente hardware (por exemplo, um processador rápido e um disco de rígido rápido) para o agente de compilação que usa a sua definição de compilação gated check-in.

  • Defina a compilação para que o agente de compilação funciona apenas o que é necessário para validar a qualidade do código que está sendo feito check-in. Para obter mais informações, consulte as diretrizes para configurações na guia processo anteriormente neste tópico.

Gated compilações de check-in podem ser executadas seja executado automaticamente ou manualmente.

Automaticamente a execução Gated compilações de Check-in

Uma compilação gated check-in é executada automaticamente quando qualquer um dos seguintes eventos ocorrem:

  • Uma compilação foi definida com o Gated Check-in caixa de seleção marcada na disparador guia de definição de compilação.

  • Alguém tentar fazer check-in de uma ou mais alterações que se cruzam com qualquer uma das pastas mapeadas na espaço de trabalho guia de definição de compilação.

Executam manualmente Gated compilações de Check-in e compilações de Private

Os desenvolvedores que desejam se sentir mais seguro sobre as alterações que são check-in manualmente podem enfileirar uma compilação de um shelveset. Quando eles levem essa abordagem, eles podem especificar uma das duas opções para que o sistema faz Avançar se a compilação teve êxito:

  • Sistema verifica as alterações (manual gated a compilação de check-in): Esta opção pode ser útil para desenvolvedores que desejam validar seu código antes de verificar, mas que trabalham em uma equipe que não usa o disparador gated check-in.

  • Sistema não verificar as alterações (compilação particular): Os desenvolvedores podem usar esta opção quando desejar validar algumas alterações em um shelveset, mas não fazer check-in.

Para obter mais informações, consulte Uma compilação de fila.