Como posso dividir um repositório SVN?

3

Em nosso grupo, temos um repositório, gostaríamos de mover o repositório, mas nesse meio tempo também gostaríamos de excluir algumas pastas e indexar novamente a revisão (excluir todos os números de revisão relacionados à pasta excluída ) Isso é possível? Se sim Como?

    
por OHLÁLÁ 04.09.2012 / 18:04

1 resposta

3

Você deve deixar o repositório offline, parando o svnserve ou o Apache.

Em seguida, despeje o conteúdo do repositório no arquivo usando um comando como

svnadmin dump repos-folder/ > repos-dumpfile

Depois disso, você pode dividir o despejo filtrando as alterações relevantes usando a ferramenta svndumpfilter . No exemplo abaixo, "minha ramificação" é o caminho dentro do repositório que você deseja colocar em um repositório separado:

svndumpfilter include my-branch --drop-empty-revs --renumber-revs < repos-dumpfile > branch-dumpfile
svndumpfilter exclude my-branch --drop-empty-revs --renumber-revs < repos-dumpfile > nobranch-dumpfile

Em seguida, você pode criar os repositórios vazios para os arquivos de despejo filtrados e importar os dados de despejo:

svnadmin create repos-branch-folder
svnadmin load --ignore-uuid repos-branch-folder < branch-dumpfile
svnadmin create repos-nobranch-folder
svnadmin load --ignore-uuid repos-nobranch-folder < nobranch-dumpfile

Você pode encontrar mais informações no Manutenção de repositório seção do excelente Livro de Subversão.

    
por blerontin 05.09.2012 / 10:02