SVN – Voltando para um commit mais velho

21 08 2012

PROBLEMA

Se você commitou algo erroniamente ou que ainda não era o tempo de commitar, existe a possibilidade de voltar esse commit para uma versão mais velha.

SOLUÇÃO
Nesse exemplo será mostrado como voltar para um versão mais velha:

  • Versão que atual: 150
  • Versão que deseja voltar: 140

O código abaixo ira:

  1. atualizar para ultima versão
  2. fazer um merge da versão mais nova com a mais velha
  3. commitar as modificações incluidas no HEAD da versão


svn update
svn merge -r 150:140 .
svn commit -m "Rolled back to r140"

FONTE: AQUI





SVN – Problema para commitar arquivos novos no SVN

7 08 2012

PROBLEMA

Problema para commitar arquivos novos no SVN.

svn: Commit failed "path not found: 404 Not Found

CAUSA

Provavelmente pode ter alguma coisa haver com o copy/paste de arquivos, que acaba copiando os .svn junto.

SOLUÇÃO 1

Limpar os controles utilizando o SVN.

No Eclipse:

Team --> Local --> Clean Up

SOLUÇÃO 2

Se os arquivos são novos mesmo e você não precisa do histórico, então procure e remova todos os .svn

find . -name .svn | xargs rm -rf

Após isso tente adicionar novamente os arquivos no contro,le de versão.

No Terminal:

svn add

Ou no Eclipse:

Team-> Add to Version Control

 





SVN – Como recuperar uma pasta apagada/deletada no SVN

2 07 2012

PROBLEMA

Se em algum dia você remover uma pasta inteira do controle de versão SVN (sem querer :P), não se desespere, existe muitas maneiras de você recuperar essa pasta com todo o seu histórico.

SOLUÇÃO

A solução que encontrei foi fazer um checkout da pasta, depois disso fazer um copy de uma determinada versão para o estado atual e no final commitar essas modificações/restaurações

Comandos:

svn co -N SVN_URL .

svn copy SVN_URL@NUMERO_REVISAO DIRETORIO_REMOVIDO

svn commit -m “Restaurando pasta removida” DIRETORIO_REMOVIDO

 

Exemplo:

svn co -N https://svn.empresa.com/repo/projetos/portalempresa@2840 .

svn copy https://svn.empresa.com/repo/projetos/portalempresa@2840 portalempresa

svn commit -m “Restaurando pasta removida” portalempresa

FONTE: AQUI