Vá para a raiz do seu diretório de trabalho.
svn add . --force
(Isso percorre recursivamente seu diretório de trabalho e faz um svn add
em cada arquivo encontrado que ainda não esteja sob controle de versão.)
Em seguida, faça isso:
svn rm $( svn status | sed -e '/^!/!d' -e 's/^!//' )
(Isto executa svn status
. O comando status recursivamente fornece uma lista de tudo que foi alterado no diretório de trabalho. O comando sed
estranho localiza todas as linhas que começam com "!" (que é como o svn status indica um arquivo excluído.))
Agora faça:
svn commit
Não que eu realmente recomende fazer isso. Seria preferível usar apenas "svn rm oldfile" em vez de "rm oldfile" enquanto você está fazendo suas modificações. O "svn add. --Force" também não é tão bom: ele vai verificar todos os arquivos temporários e arquivos de objeto gerados durante o teste. Seria melhor apenas "svn add newfile" quando você se preocupa em adicionar um novo arquivo.
Eu normalmente executo "svn status -u" antes de cada checkin para obter uma imagem clara do que mudou na minha cópia de trabalho.
Eu encontrei a resposta para a parte svn rm em: link , que por sua vez credita link .