Primeiramente, estou tentando reintegrar uma ramificação no tronco (usando o TortoiseSVN), mas estou recebendo a mensagem de erro "A consulta de informações de mesclagem requer a versão 3 do esquema do sistema de arquivos FSFS; o sistema de arquivos E: / MyRepository / usa apenas a versão 2".
Realmente não era possível reintegrar ramificações em versões anteriores do subversion? Ou existe outra maneira de fazer isso?
De qualquer forma, como posso atualizar o sistema de arquivos da versão 2 para a versão 3?
Respostas:
Você não especificou a versão do Subversion que seu servidor está executando. Mas, com base na mensagem que você forneceu na pergunta, provavelmente é uma versão 1.4.x ou anterior. Não me lembro se havia um comando de atualização fornecido ou não para a conversão de 1.4.x para 1.5.x, mas a maneira certa de obter o repositório da versão 2 para a versão é um dump and load. Mas isso não importa muito, você precisará instalar o 1.6.x de qualquer maneira para acompanhar as novidades. Então, aqui estão as etapas que você precisa executar:
Veja também as Perguntas frequentes do Subversion http://subversion.apache.org/faq.html#dumpload para um exemplo concreto.
Isso deve ajudá-lo a cuidar e o arquivo uuid evitará que seus clientes surtem. Faça uma atualização svn para ter certeza.
fonte
svnadmin help load
mensagem:--force-uuid : set repos UUID to that found in stream, if any
. Em suma: não há necessidade de jogar com arquivossudo chown -R fred:www myrepository
seguido por umsudo chmod g+w
paramyrepository/db/repcache.db
myrepository/db/uuid
Despejo / carregamento não é necessário para atualizar os repositórios do Subversion. Use o comando svnadmin upgrade:
NOTA: svnadmin upgrade "executa apenas a quantidade mínima de trabalho necessária para isso, mantendo a integridade do repositório. Enquanto um dump e uma carga subsequente garantem o estado de repositório mais otimizado, o svnadmin upgrade não." - veja também a documentação de atualização do svnadmin
fonte
Ivan tem uma boa dica que funciona, eu tentei e é muito simples.
Uma coisa que eu perdi no exemplo da Ivans que pode ser útil para outras pessoas é:
Ex.
Não aponte svnadmin no diretório db, mas no diretório que contém o diretório db.
fonte