Excluímos acidentalmente a pasta 'tags' de nosso repositório Subversion onde pretendíamos apenas excluir uma tag específica. Qual é a maneira mais fácil de recuperar a pasta 'tags'?
Usamos o TortoiseSVN como nosso cliente e pensei que quando for ao navegador do repo e mostrar o log, haverá algo como "reverter alterações desta revisão" semelhante ao que você pode ver em um diálogo semelhante em sua cópia de trabalho. Mas não existe tal comando lá ...
fonte
para os entusiastas da linha de comando:
primeiro encontre o número da revisão onde sua exclusão aconteceu:
digamos que você acha que o diretório foi excluído na revisão 999 (aliás: você pode achar mais fácil encontrar o número da revisão com o navegador svn repo)
copie a pasta da revisão menos 1
voilà pronto!
no seu caso, pode ser:
fonte
A maioria dessas respostas funcionará até certo ponto, mas a resposta correta é a de Daniel. Faça uma mesclagem reversa. Dessa forma, você mantém o histórico da versão.
svn merge -r R1:R2
onde R1 é a revisão em que você está e R2 é a revisão que contém o arquivo / pasta excluído.
fonte
svn copy
.Você precisará fazer uma mesclagem reversa .
Para obter detalhes sobre como fazê-lo (e praticamente qualquer outra coisa que você queira ou precise fazer com o SVN), o livro oficial está disponível online .
fonte
Continuando com a resposta de Raudi, que funcionou para mim após esta revisão.
Alguns clientes svn podem precisar do número de revisão especificado usando o parâmetro de revisão -r em vez de usar @ após a pasta como segue:
fonte
-r <revision>
funcionará. No entanto, se estiver tentando restaurar a pasta diretamente, você precisará usar@<revision>
. Caso contrário, ele informará que o arquivo não foi encontrado.Vá
Repository Browser
para a suarepository
, clique com o botão direito na pasta pai onde existia a pasta excluída . Agora,Show Log
da pasta pai e selecione a revisão anterior onde você confirmou a operação de exclusão. Você terá uma lista e clique com o botão direito na pasta das informações de revisão e selecioneUpdate to this Revision
.Você terminou
fonte