Pergunta

Eu tenho um repositório subversion com o layout padrão, ou seja, trunk / e ramos / (e tags /). Ao trabalhar em uma mudança maior, um ramo de recurso é usado, regularmente sincronizado com o tronco, e mais tarde reintegrado de volta ao tronco (usando 1.5 agora). Pretty coisas padrão.

O que eu estou querendo saber é se tal ramo de funcionalidade, uma vez acabada e fundiu deve ser mantido ao redor, ou excluído. O livro subversão, ocasionalmente, parece sugerir que é comum para excluí-los, mas eu também vi um monte de projetos de código aberto que fazem manter os ramos.

Eu também estou um pouco preocupado sobre como a exclusão de um ramo fará com que seja mais difícil manter o controle de quais ramos existiram, especialmente quando nomes potencialmente duplicados entrar no cenário (dizem procurar-refactor que duas vezes), sua cometer histórias desaparecendo em algum lugar nas profundezas do repositório etc.

Por outro lado, os ramos são usados ??muito, especialmente com 1,5 agora, e eu gosto da idéia de não ter que picar através de uma grande lista de ramos inativos para encontrar os que eu estou trabalhando atualmente.

Quais são os prós e contras que eu estou ausente? O que as pessoas estão fazendo?

Foi útil?

Solução

Se você está realmente preocupado com a excluí-los, para que não sejam esquecidos, em seguida, basta criar uma pasta sob filiais chamados 'inativo' e svn move seu, ramos inativos mais velhos para essa pasta. Este pode ser o melhor dos dois mundos para você.

Outras dicas

Você pode excluir com segurança-los. Excluí-los não removê-los do repositório, o espaço alocado nunca é recuperada, mas com certeza faz seu olhar árvore do projeto inteiro mais limpo.

Eu tenho exclusão de ramos de novos recursos como estamos a fazer, como eu como a falta de desorganização. Houve pequena confusão por parte de alguns outros desenvolvedores, mas desde que gravar números de revisão de commits em nosso sistema de rastreamento de erro, tem sido muito suave. Se alguém chega dizendo que eles não conseguem encontrar um ramo, conselho para usar a bandeira -rrevision em seu log / diff / checkout / whatever é geralmente tudo que é necessário.

A minha equipa exclui-los a manter a desordem para baixo. Não é como se a ir embora depois de tudo; eles podem ser recuperados se desejado. Está certo que ele pode ser difícil encontrá-los novamente: você precisa saber um número de revisão onde o ramo existia para que você diga ao seu cliente para olhar para essa revisão, a fim de ver seus arquivos

.

Nós usamos FogBugz para o nosso gerenciamento de projeto que mantém o controle de quando as coisas estavam comprometidos com o nosso repositório SVN por número de revisão. Podemos usar isso para determinar qual revisão precisamos reverter para a fim de ver nossos arquivos:. Encontramos a história recurso no FogBugz, olhar para determinar o que as revisões do ramo existia, e usar essa informação para saltar para trás

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