Pergunta

Estamos fazendo a mudança de SourceGear Vault para TortoiseSVN com VisualSVN para integração Visual Studio - absolutamente amo isso. No entanto, existem várias bibliotecas de classes que fazem referência em várias aplicações diferentes que não fazem parte da raiz da cópia de trabalho em qualquer um dos aplicativos. Qual é a melhor maneira de lidar com isso para que possamos continuar a utilizar a integração do Visual Studio, mas ainda mantém várias bibliotecas de classe fora localizado de raiz de cada projeto / aplicação? não SourceGear não tem um problema com isso.

É possível adicionar bibliotecas de classes separadamente apenas usando TortoiseSVN no Explorer, mas não há nenhuma possibilidade de confirmar as alterações a qualquer coisa fora da cópia de trabalho de dentro do Visual Studio; nem há os visualsvn "semáforos", indicando status para estes fora de trabalhar bibliotecas de classe cópia.

A propósito, também estamos indo com o "um repositório com muitos projetos" rota ao contrário de vários repositórios, especialmente porque é assim que temos trabalhado durante anos para este ponto.

UPDATE:

eu re-li algumas coisas que eu tinha olhei antes e descobriram que svn:. Externos não apenas se referem ao uso de código em diferentes repositórios, mas também pode ser usado para usar múltiplas cópias de trabalho em VisualSVN

http://www.visualsvn.com/support/topic/00007/ e http://svnbook.red-bean.com/ en / 1.2 / svn.advanced.externals.html

No entanto, esta é a melhor maneira de lidar com esta questão? Há um boa fio que passa por coisas, mas não completamente resolve coisas.

Portanto, usar o SVN: externos ou não? Use vários repositórios ou não? Mais uma vez, há anos que temos referenciado o código em bibliotecas de classe compartilhados entre várias soluções / aplicações e isso funciona para nós. Agora a melhor forma de fazer este trabalho com VisualSVN?

Foi útil?

Solução

Encontrado as melhores respostas aqui :

projetos referenciados

Às vezes é útil construir uma cópia de trabalho que é feito de um número de diferentes checkouts. Por exemplo, você pode querer subdiretórios diferentes para vir de diferentes locais em um repositório, ou talvez de diferentes repositórios. Se você quer que cada usuário tenha o mesmo layout, você pode definir o svn: propriedades externas.

aqui :

Inclua um sub-projeto comum

Às vezes, você vai querer incluir um outro projeto dentro de sua cópia de trabalho, talvez algum código da biblioteca. Você não quer fazer uma cópia deste código em seu repositório, porque então você iria perder a conexão com o original (e mantidos) código. Ou talvez você tem vários projetos que compartilham código do núcleo. Há pelo menos 3 maneiras de lidar com isso.

Outras dicas

Eu entendo que tem sido mais de dez anos desde que você fez esta pergunta, mas eu estou contente de dizer que houve progresso na implementação suporte para múltiplas cópias de trabalho no plug-in VisualSVN. VisualSVN 7.1.0-alfa 1 está agora disponível para testar, e que apresenta experimental suporte para múltiplas cópias de trabalho dentro de uma única solução .

Por favor, consulte o de downloads pré-lançamento página . Note-se que a nova versão suporta apenas o Visual Studio 2019.

PS Veja o artigo KB7: Usando várias cópias de trabalho em VisualSVN . Também vamos atualizá-lo muito em breve.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top