Ramificar pastas e arquivos
Você pode usar ramificações para realizar as seguintes metas:
Gerenciar trabalho simultâneo com várias equipes na mesma base de código
Isolar riscos que são apresentados por conjuntos diferentes de alterações na base de código
Tirar instantâneos e oferecer suporte às alterações isoladas subsequentes (por exemplo, criar uma ramificação de versão)
Por exemplo, a ilustração a seguir mostra como a empresa DinnerNow desenvolveu uma estrutura de ramificação para satisfazer suas necessidades comerciais.
Estrutura de ramificação DinnerNow na janela de hierarquias
A Equipe de Recurso A e a Equipe de Recurso B fazem seu trabalho em ramificações separadas. Quando as equipes estiverem prontas para integrar seus trabalhos, elas mesclarão suas ramificações na ramificação Dev. Quando as compilações da ramificação Dev estiverem estáveis e prontas para teste, as equipes mesclarão a ramificação Dev na ramificação Teste.
Ao passo que cada versão é lançada, a ramificação Principal é transformada em uma nova ramificação de versão, como a ramificação Version1 e a Version2. Seguindo esta estratégia, a empresa pode aprimorar ou corrigir cada versão anterior do produto separadamente, se necessário.
É possível executar uma operação de ramificação usando o Gerenciador do Controle do Código-Fonte, como este tópico demonstra, ou o comando de ramificação em um prompt de comando. Para obter mais informações, consulte Branch Command.
Dica
A ramificação é uma técnica importante e poderosa para criar um conjunto paralelo de versões dos arquivos.No entanto, usar as ramificações pode adicionar complexidade e custo ao seu projeto.Por exemplo, quando você mescla duas ramificações, pode ter que resolver conflitos.
Antes de criar uma ramificação, você deve considerar se pode satisfazer melhor suas necessidades através da aplicação de um rótulo.Aplicando um rótulo, você pode obter de forma rápida e fácil um instantâneo do estado dos seus arquivos para que você possa recuperar ou compilar posteriormente os arquivos nesse estado.Para obter mais informações, consulte Usar rótulos para obter um instantâneo dos arquivos.
Converter uma pasta em uma ramificação
A versão do Visual Studio Team Foundation Server 2010 iniciou uma distinção entre ramificações e pastas. A ilustração a seguir mostra o nível superior da estrutura de pastas DinnerNow:
Estrutura de pastas DinnerNow no Gerenciador do Controle do Código-Fonte
Como mostra a ilustração, você ainda pode usar pastas para organizar ramificações em uma hierarquia de controle de versão do projeto de equipe. Porém, pastas e ramificações têm uma aparência e recursos diferentes. Quando você clica com o botão direito em uma pasta ou ramificação e clica em Propriedades, você exibe informações diferentes e funcionalidade diferente.
Quando você executa operações de ramificação, as ramificações têm vantagens importantes sobre as pastas. Ramificações dão suporte a recursos de controle de versão que fornecem visibilidade extra em sua estrutura de ramificação e em onde seus conjuntos de alterações foram mesclados. (Para obter mais informações, consulte os links na seção Consulte também mais adiante neste tópico.)
Embora você ainda possa ramificar e mesclar entre pastas, a melhor prática para a sua equipe é ramificar e mesclar apenas entre ramificações. O seguinte procedimento explica como converter uma pasta a uma ramificação.
Permissões necessárias
Para executar o seguinte procedimento, sua permissão Gerenciar ramificação deve ser definida para Permitir. Para obter mais informações, consulte Referência de permissões para o Team Foundation Server.
Para converter uma pasta em uma ramificação
No Gerenciador do Controle do Código-Fonte, verifique se a pasta que você deseja converter existe no servidor.
Se o ícone pendente de adição () aparece próximo a pasta, clique com o botão direito do mouse na pasta e clique em Fazer check-in de alterações pendentes.
Clique com o botão direito do mouse na pasta que você deseja converter, aponte para Ramificação e Mesclagem e então clique em Converter para Ramificação.
A caixa de diálogo Converter Pasta para Ramificação aparece.
Importante Se você estiver convertendo uma pasta que você já ramificou, provavelmente deverá marcar a caixa de seleção Execute recursivamente esta conversão a todas as pastas filhos ramificadas. Esta opção também converte em ramificações todas as pastas que foram ramificadas desta pasta.
(Opcional) No campo Proprietário, digite o nome da pessoa que possui esta ramificação.
Dica
O campo Proprietário é apenas para obter informações.Ter o nome mencionado no campo Proprietário não concede permissão adicional.
(Opcional) No campo Descrição, digite informações que você acha que poderiam ajudar aos outros membros da equipe que devem usar esta ramificação ou entender sua finalidade.
Clique em Converter.
Importante
Você não pode aninhar ramificações; portanto, você não poderá converter nenhuma pasta em uma ramificação se ela contiver uma ramificação ou estiver contida por uma ramificação.Por exemplo, a ilustração a seguir mostra como nem o pai nem o filho da ramificação FeatureTeamA podem ser convertidos em uma ramificação.
Depois de converter uma pasta em uma ramificação, você pode convertê-la novamente em uma pasta se sua equipe decide alterar a estrutura da ramificação.
Para converter uma ramificação em pasta
Em Gerenciador do Controle do Código-Fonte, clique na ramificação que você deseja converter.
No menu Arquivo, aponte para Controle do Código-Fonte, então para Ramificação e Mesclagem, e clique em Converter para Pasta.
Quando a mensagem Converter ramificação de volta para pasta aparecer, clique em Sim.
Ramificar uma ramificação
Depois de converter uma pasta em uma ramificação, você pode criar outras ramificações a partir dessa ramificação. O procedimento a seguir mostra como você pode usar a interface gráfica do usuário do Visual Studio Application Lifecycle Management (ALM) para ramificar uma ramificação. (Para obter informações sobre como executar esta tarefa no prompt de comando, consulte Branch Command.)
Permissões necessárias
Para executar este procedimento, sua permissão Gerenciar Ramificação deve ser definida para Permitir para os caminhos das ramificações de origem e destino. A sua permissão Mesclar para o caminho da ramificação de destino deve estar definida como Permitir. Para obter mais informações, consulte Referência de permissões para o Team Foundation Server.
Para ramificar uma ramificação
Em Gerenciador do Controle do Código-Fonte, clique com o botão direito na ramificação que você deseja ramificar, aponte para Ramificação e Mesclagem e clique em Ramificar.
A caixa de diálogo Ramificar de aparece.
Na caixa Nome da Ramificação de Destino, especifique o caminho da nova ramificação.
(Opcional) Na seção Ramificar da versão, clique em uma das seguintes opções na lista Por:
Se você clicar em Última Versão, a ramificação será criada para a versão mais recente no controle de versão.
Se você clicar em Conjunto de Alterações, poderá especificar o número do conjunto de alterações na caixa Conjunto de Alterações. Como alternativa, clique nas reticências (...) para abrir a caixa de diálogo Localizar Conjuntos de Alterações.
Para obter mais informações, consulte Localizar e exibir conjuntos de alterações.
Se você clicar em Data, poderá especificar uma data na caixa Data.
Clique em Ramificar.
A ramificação é criada e aparece no Gerenciador do Controle do Código-Fonte.
Observação Ao contrário da maioria das operações de controle de versão, esta operação não produz uma alteração pendente. Em vez disso, a operação é concluída imediatamente e você não pode desfazê-la.
Ramificar uma pasta ou um arquivo
Embora você pode ramificar um arquivo ou pasta diretamente, recomendamos que você evite fazê-lo. Caso contrário, não será capaz de exibir a hierarquia de ramificação ou rastrear suas conjuntos de alterações. A prática recomendada é ramificar e mesclar apenas entre ramificações, conforme descrito anteriormente neste tópico.
Mas, se você tiver uma necessidade especial de ramificar uma pasta ou um arquivo, poderá usar o seguinte procedimento para executar esta tarefa. (Para obter informações sobre como executar esta tarefa no prompt de comando, consulte Branch Command.)
Permissões necessárias
Para executar este procedimento, sua permissão Fazer Check-out e sua permissão Mesclar para o caminho designado devem ser definidas para Permitir. Para obter mais informações, consulte Referência de permissões para o Team Foundation Server.
Para ramificar uma pasta ou um arquivo
Em Gerenciador do Controle do Código-Fonte, clique com o botão direito na pasta ou no arquivo que você deseja ramificar, aponte para Ramificação e Mesclagem e clique em Ramificar.
A caixa de diálogo Ramificar aparece.
Na caixa Destino, modifique o local e o nome da nova ramificação.
Você também pode clicar em Procurar para especificar um destino.
Na seção Ramificar da versão, clique em um das seguintes opções na lista Por:
Se você clicar em Última Versão, a ramificação será criada para a versão mais recente no controle de versão.
Se você clicar em Conjunto de Alterações, poderá especificar o número do conjunto de alterações na caixa Conjunto de Alterações. Como alternativa, você pode clicar nas reticências (...) para abrir a caixa de diálogo Localizar Conjuntos de Alterações.
Para obter mais informações, consulte Localizar e exibir conjuntos de alterações.
Se você clicar em Data, poderá especificar uma data na caixa Data.
Se você clicar em Rótulo, poderá digitar o nome do rótulo na caixa Rótulo. Como alternativa, você pode clicar nas reticências (...) para abrir a caixa de diálogo Localizar Rótulo.
Para obter mais informações, consulte Usar rótulos para obter um instantâneo dos arquivos.
Se você clicar em Versão do Espaço de Trabalho, a ramificação será criada para a versão no seu espaço de trabalho.
(Opcional) Marque a caixa de seleção Criar cópias de trabalho locais para a nova ramificação para criar uma cópia do item controlado por versão no espaço de trabalho local. Desmarque a caixa de seleção se você não precisa de uma cópia local e se deseja melhorar o desempenho não baixando muitos itens para seu computador.
Clique em OK.
A ramificação é criada e aparece no Gerenciador do Controle do Código-Fonte.
Dica
Uma janela Procurar Pasta aparece se você marca a caixa de seleção Criar cópias de trabalho locais para a nova ramificação e se a pasta local que você especificou não é mapeada no espaço de trabalho atual.Procure uma pasta ou clique em Criar Nova Pasta, especifique uma pasta para sincronizar os itens de versão controlada e clique em OK.
Consulte também
Tarefas
Exibir a hierarquia de ramificação de um projeto da equipe
Conceitos
Usar o Gerenciador de Controle do Código-Fonte para gerenciar arquivos sob controle de versão
Exibir onde e quando os conjuntos de alterações foram mesclados
Ramificar de maneira estratégica
Outros recursos
Visual Studio Lab Management Guide (Guia do Visual Studio Lab Management)