Como migrar parte de um repositório SVN?

3

Como você migra uma parte de um repositório SVN para um novo repositório?

Para migrar o conteúdo de um repositório SVN completo para um novo repositório, é necessário primeiro descarregar o repositório antigo:

svnadmin dump /path/to/repository > repository-name.dmp

e, em seguida, carregue-o no novo usando svnadmin load .

Mas não tenho certeza de como migrar uma parte. Eu ainda tenho que despejar a coisa toda? Eu quero a parte que eu quero?

Para apenas despejar myproject , tentei isso, mas não funcionou:

svnadmin dump /path/to/repository/myproject

Alguma idéia?

    
por user9474 08.04.2010 / 23:36

2 respostas

6

Se você deseja extrair parte do repositório, um subdiretório específico. Você primeiro precisará despejar o repositório inteiro, executar svndumpfilter para incluir esse diretório e, finalmente, carregar coisas em um repositório limpo.

Digamos que você queira mover o diretório Calc, você faria:

svnadmin dump repos > dumpfile
cat dumpfile | svndumpfilter include Calc > dumpfile-Calc

Em seguida, para carregar o diretório do Calc de volta corretamente, você faria:

svnadmin create newrepos
svnadmin load Calc < dumpfile-Calc

Isso é obtido e ligeiramente modificado nos documentos: link

    
por 08.04.2010 / 23:54
0

Quando eu queria fazer isso, eu simplesmente fiz um svnadmin dump e um svnadmin load , o mesmo que você fez, depois deletei todo o restante do repositório.

O repositório tinha apenas 3GB de tamanho, então não era tão grande, e por segurança não é tão bom quanto você pode desfazer as exclusões rolando de volta, mas conseguiu a mesma coisa, porque eu não pude t encontrar uma maneira de fazer isso, mantendo o histórico de revisão.

    
por 08.04.2010 / 23:45

Tags