Compartilhar via


Resolver conflitos de controle de versão do Team Foundation

Uma vantagem de usar Controle de versão do Team Foundation para gerenciar seus arquivos é que várias pessoas podem trabalhar simultaneamente em um arquivo. Uma desvantagem é que, às vezes, você deve resolver conflitos antes de você pode obter, verificar, desfazer check-in particular, mesclar ou reverter os arquivos.

Embora possa ser frustrante encontrar conflitos, o sistema fornece informações e ferramentas para ajudá-lo compreender e resolver os conflitos.

  • Resolver conflitos

  • Conflitos do Resolver tudo automaticamente

  • AutoMerge um conflito individual

  • Resolver manualmente um conflito individual

  • Entender as opções automáticas

  • Trabalhar no prompt de comando

  • Obter dicas

Resolver conflitos

Use a janela de Resolver Conflitos para resolver conflitos que estão bloqueando você.

Alterações conflitantes bloqueiam um check-in

Resolver janela conflitos

Por padrão, a janela mostra somente os conflitos causados pela tentativa de operação mais recente. Quando a janela está nesse estado, é mostrado uma mensagem que começa com: Filtro de caminho aplicado. Para mostrar todos os conflitos em seu espaço de trabalho, selecione Obter Todos os Conflitos. Uma mensagem que começa com: Conflitos de n é exibida.

Se já faz muito tempo que você fez alterações nos arquivos de seu espaço de trabalho, novos conflitos podem ter ocorrido. Para atualizar a janela Resolver Conflitos, selecione Atualizar.

Cada conflito contém informações e às vezes links que podem ajudar a resolvê-lo. Para obter mais informações, você pode selecionar o conflito e escolher:

  • Botão Histórico Histórico para ver o histórico do arquivo. Se a operação que causou o conflito for uma mesclagem ou uma reversão, você poderá escolher o controle de menu à direita de Histórico e selecione Histórico de Origem ou Histórico de Destino.

    Consulte Obter o histórico de um item.

  • Botão anotar Anotar para exibir detalhes em todas as alterações que foram feitas na versão mais recente do arquivo, incluindo quem fez cada alteração e quando a fez. Consulte Exibir alterações de arquivo usando anotação.

  • Botão Comparar arquivo Comparar (ou o menu à direita do botão e, depois, escolha um comando). A janela Diferença aparece.

Conflitos do Resolver tudo automaticamente

Por padrão, o sistema tenta Resolver Tudo Automaticamente a menos que você desative essa opção (consulte Dicas). Na janela Resolver Conflitos, você também pode escolher manualmente Resolver Tudo Automaticamente e então escolher:

  • Selecione Todos os Tipos de Conflitos se você desejar que o sistema tente resolver os conflitos automaticamente usando todas as suas heurísticas.

  • Selecione Tipos de Conflitos Específico se quiser que o sistema tente resolver os conflitos, mas quiser excluir algumas heurísticas.

    A caixa de diálogo Escolher Conflitos para Resolver aparece. Marque ou desmarque as opções que você deseja ativar ou desativar, escolha Resolver Automaticamente. Para obter mais informações, consulte Entenda as opções automáticas abaixo.

As tentativas do sistema de resolver os conflitos automaticamente exibidos na janela de alterações pendentes. Quaisquer conflitos que o sistema não conseguiu resolver permanecerão na janela. É necessário resolver manualmente esses conflitos.

AutoMerge um único conflito

Escolha Mesclar Automaticamente se você deseja tentar resolver conflitos selecionados usando as opções de Mesclar Automaticamente descritas em Compreenda as opções automáticas abaixo.

Dica

Você pode pressionar e segurar a tecla Ctrl ou Shift e selecione vários conflitos.

Dica

Se o recurso Mesclar Automaticamente for desativado, esse conflito deverá ser resolvido manualmente.

Resolver manualmente um único conflito

Se o sistema não pode resolver um conflito automaticamente ou se você deseja entender o que está sendo alterado, deve resolver o conflito manualmente. Em cada conflito, o sistema exibe as ações que você pode tomar para resolver o conflito. As ações exibidas dependem do tipo de conflito e a operação que causou o conflito.

Mesclar alterações na ferramenta de mesclagem

Quando um conflito é causado por alterações de conteúdo conflitantes, você pode selecionar Mesclar Alterações na Ferramenta de Mesclagem.

Quando você seleciona essa ação, a janela de mesclagem aparece.

Janela de mesclagem

O resultado do seu trabalho para resolver o conflito é mostrado no painel de Resultados.

Nesta janela, você pode:

  • Selecione o layout da janela: Modo de exibição vertical, Modo de exibição horizontal, Modo de exibição misto.

  • Navegue entre as diferenças e conflitos.

  • Selecione os itens das versões esquerda e direita do arquivo para inclui-los no resultado.

  • Digite o conteúdo adicional no arquivo no painel de resultados.

  • Exibir o histórico do arquivo. Consulte Obter o histórico de um item.

  • Comparar as várias versões do arquivo.

  • Anote o arquivo para consultar quem alterou o que. Consulte Exibir alterações de arquivo usando anotação.

Quando estiver satisfeito com o conteúdo do painel de Resultado, selecione Aceitar Mesclagem.

Entender as opções automáticas

Em casos especiais, talvez você queira restringir os tipos de conflito resolvidos automaticamente pela opção Resolver Tudo Automaticamente.

Quando você selecione Resolver Tudo Automaticamente e, em seguida, Especificar Tipos de Conflitos, a caixa de diálogo Escolher Conflitos para Resolver aparece.

Escolha a caixa de diálogo resolver os conflitos

Se você desejar que o sistema resolva automaticamente conflitos que ocorreram porque...

Conforme explicado nesse exemplo…

Em seguida, marque esta caixa de seleção...

Alterações de conteúdo não conflitante foram feitas em cada versão de um arquivo

Na versão do arquivo à esquerda, um zero foi adicionado ao início. No arquivo à direita, um três foi adicionado ao final:

Alterações de conteúdo não conflitante

Conflitos com algumas alterações de conteúdo

As alterações de conteúdo que foram feitas são exclusivas para o espaço de trabalho (durante a operação Obter ou Fazer Check-in) ou para versão de destino (durante a operação Reverter ou Mesclar)

quatro e cinco foram adicionados ao espaço de trabalho ou à versão de destino:

Alterações de conteúdo exclusivo para o espaço de trabalho ou de destino

Conflitos com alterações de conteúdo feitas somente no espaço de trabalho local ou na ramificação de destino

As alterações de conteúdo que foram feitas são exclusivas para o servidor (durante a operação Obter ou Fazer Check-in) ou para versão de origem (durante a operação Reverter ou Mesclar)

quatro e cinco foram adicionados ao servidor ou à versão de origem:

Alterações de conteúdo exclusivo para o servidor ou origem

Conflitos com alterações de conteúdo feitas somente na versão do servidor ou na ramificação de origem

Um arquivo no servidor (durante a obtenção ou verificação) ou na ramificação de origem (durante a mesclagem ou a operação de reversão) foi renomeado

Você fez check-out de um arquivo que é chamado launch.cs e trabalhou nele. Durante esse tempo, outra pessoa fez check-in em um conjunto de alterações que afetou o mesmo arquivo. O conjunto de alterações não alterou os conteúdos de arquivo, mas alterou o nome do arquivo para start.cs.

Conflitos causados por renomeação de arquivo na versão do servidor ou na ramificação de origem

  • Alterações de conteúdo comuns feitas que resultaram em conteúdo idêntico em cada versão.

  • Você modificou um arquivo, fez check-in do mesmo através de uma compilação de check-in com barreira, e selecionou a opção Preservar minhas alterações pendentes localmente

As alterações para cada versão resultaram em conteúdo de arquivo idêntico. As alterações podem ser o conteúdo em arquivos, conforme mostrado no exemplo o seguir:

Alterações de conteúdo idênticas em cada versão

Esta opção também resolve os conflitos que são causados por todas as outras operações (por exemplo, renomear, excluir, desfazer exclusão, e ramificação) e que resultam em arquivos idênticos.

Dica

Se você selecionar esta caixa de seleção, quando prosseguir, o sistema resolverá essas alterações colocando (baixando) a versão de servidor em seu espaço de trabalho.

Conflitos causados por alteração idêntica no servidor e espaço de trabalho

Trabalhar no prompt de comando

Dicas

  • DicaPor padrão o sistema tenta Resolver Tudo Automaticamente. Para alterar a opção, na barra de menus selecione Ferramentas, Opções e, em seguida, na caixa de diálogo Opções, navegue até Controle do Código-Fonte, Visual Studio Team Foundation Server. Desmarque a caixa de seleção Tentar resolver conflitos auto. quando estes forem gerados.

  • DicaSua equipe precisa colaborar para resolver um grande número de conflitos (por exemplo, aqueles que podem ocorrer após a operação em uma grande base de código?) Em caso afirmativo, um espaço de trabalho público em um computador de desenvolvimento compartilhado pode ajudar. Consulte Criar e trabalhar com espaços de trabalho.