Como reparar o repositório danificado (que possui um diretório .svn centralizado)?

17

Eu recentemente atualizei minha instalação do TortoiseSVN para a versão 1.7.1. Isso me obrigou a atualizar minha cópia de trabalho também. A atualização removeu todos (mas um) dos diretórios .svn de todos os subdiretórios, deixando apenas um na raiz.

Agora, do nada (é claro, desconfio do meu software antivírus), há um erro quando, por exemplo, tento limpar a cópia de trabalho. Eu também não consigo cometer nada.

A mensagem de erro ao limpar é:

Cleanup failed to process the following paths: C:\svn

Can't open file 'C:\svn.svn\pristinebcc5fa7819f84f56b81dfa0236f0aac7b7d404.svn-base': The system cannot find the file specified.

Rastreei o erro para estar relacionado à presença de um diretório na cópia de trabalho. Se eu mudar o nome, então tudo funciona. Quando está presente, recebo o erro. Eu também deletei e verifiquei novamente. Nenhuma mudança, o erro persiste.

Com as versões anteriores, eu poderia reparar os danos no .svn facilmente: basta excluir a pasta incorreta e fazer check-out novamente. Eu não posso mais fazer isso porque agora o diretório .svn está centralizado.

O que eu posso fazer para consertar minha cópia de trabalho?

    
por Heinrich Ulbricht 30.11.2011 / 12:41

6 respostas

20

Can't open file 'C:\svn.svn\pristinebcc5fa7819f84f56b81dfa0236f0aac7b7d404.svn-base

Acabei de ter um erro semelhante e realmente tive que fazer esse arquivo com o bloco de notas e, em seguida, a limpeza funcionou.

    
por 13.12.2012 / 20:18
4

Em vez de criar um arquivo vazio (que não me atrevi a fazer), fiz um checkout temporário de apenas o diretório afetado (especificando a mesma revisão) e copiei o arquivo ausente do arquivo nova subpasta .svn na pasta do diretório de trabalho quebrado.

Para ilustrar melhor isso, no meu caso, o arquivo que o svn reclamou era o .svn/pristine/d1/d12a84ef7be5dad86b76e1a45fc3da4698d38796.svn-base , que é exatamente o caminho a ser encontrado no checkout parcial e fresco.

    
por 28.05.2015 / 10:38
3

Tivemos o mesmo problema após a atualização da versão antiga para o Tortoise SVN 1.7.7.

Como não encontrei outra solução, apaguei a cópia de trabalho local e a verifiquei novamente. Está funcionando bem agora.

    
por 01.08.2012 / 11:31
2

Recebi o problema enquanto abortava uma mesclagem. Não consegui executar nenhuma ação do SVN. Ao fazer uma limpeza do SVN, ocorreu um erro de que não é possível localizar um arquivo especificado que leva à falha na limpeza.

Eu criei um arquivo fictício com o nome exato na pasta especificada e limpei o SVN.

Então eu pude continuar.

    
por 28.02.2014 / 21:31
0

Eu tive um problema semelhante, em que estava dizendo que um arquivo C:\working_copy\dir\file.xml não pôde ser encontrado. Eu tinha deletado o diretório dir . No meu caso, basta adicionar uma nova pasta dir & file.xml file (com texto vazio) permitiu que a limpeza continuasse, então eu poderia atualizar novamente a cópia de trabalho.

    
por 03.12.2012 / 06:35
0

Meu problema era que eu precisaria reconfigurar todo o projeto no meu IDE se eu fizer o check-out do repositório de rascunho, não me importei em salvar as alterações.

Eu removi o diretório .svn e o repositório de checkout no mesmo diretório.

O problema foi resolvido: eu consegui fazer todas as operações svn e o projeto ainda estava configurado no IDE

    
por 04.01.2018 / 08:46