Pergunta

Eu tenho um servidor que a base anfitriões minha Subversion código. Esse servidor é atualmente uma caixa Windows Server 2003, e meu administrador de TI quer atualizá-lo para Windows Server 2008 .

Isso significa que eu vou precisar para mover meu repositório Subversion enquanto o servidor é construído para cima e queria saber o que são as melhores práticas para mover o repositório para um novo servidor.

Parece que, olhando em linha, a maneira recomendada é usar:

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

E, em seguida, use:

svnadmin create repository-name
svnadmin load repository-name< repository-name.dmp

Para importar o repositório.

O método acima parece ser a melhor abordagem?

Foi útil?

Solução

Sim, dumping e carregar o repositório é um caminho a percorrer. Copiar a pasta do repositório diretamente é uma opção viável se, e somente se, você está certo que ninguém vai estar acessando o repositório enquanto o processo de cópia está em andamento (ou você pode fazer uma "cópia quente" do repositório, que pode lidar com estes casos de forma segura).

Você também terá que quer re-check-out todas as suas cópias de trabalho, ou usar o svn switch comando, que apenas reescreve URLs. A maneira mais conveniente é usar mudar comando do TortoiseSVN, o que reduz o risco de cometer um erro durante o processo de deslocalização.

Outras dicas

Meu restaurar roteiros são assim:

svnadmin create repository-name --fs-type fsfs
svnadmin load   repository-name --force-uuid < repository-name.dmp

A primeira linha garante os usos repositório back-end FSFS (que é recomendado por várias fontes, incluindo este: como FSFS é melhor , e AFAIK versões mais recentes do Subversion usá-lo como padrão). FSFS é o nome de uma implementação de sistema de arquivos Subversion.

As segundas linhas mantém o UUID do repositório, para uma transição mais fácil (sem interruptor --force-uuid, a deslocalização cópia de trabalho irá falhar).

Alguns links:

Você também pode usar svnsync para mover o repositório; Dessa forma, você pode transferir todos os dados sem a necessidade de levar o 'velho' para baixo repositório. Esta é também a única maneira que eu conheço para obter seus dados a partir de ambientes hospedados, onde você não tem acesso shell ou acesso a despejar o repositório.

Outra alternativa:

uso svnrdump. http://www.crowbarsolutions.com/backing-up- restaurando-a-remote-svn-repository /

"Você vai precisar aa ferramenta chamada svnrdump. Conforme descrito pelo Apache,“svnrdump replica a funcionalidade do svnadmin dump e svnadmin load, mas funciona em repositórios remotos, em vez de precisar (sistema de arquivos local) o acesso do administrador à fonte ou repositório de destino.”

Se você estiver usando o Ficheiro Tipo de sistema, você pode apenas literalmente levar a pasta que contém o repositório e movê-lo. Se você está mudando servidores, então as chances são que você vai precisar alterar o local em que seus locais de diretório de trabalho olhares para o repositório utilizando o comando 'mudar'.

A maneira mais fácil é usar:

svnadmin hotcopy path/to/your_current_directory /path/to/your_destination_directory
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top