Remova o arquivo do repositório SVN sem excluir a cópia local

217

Como posso "excluir" um arquivo que já está no repositório SVN sem excluí-lo do meu sistema de arquivos?

As instruções do TortoiseSVN ou da linha de comando são bem-vindas.

O seguinte funciona, mas espero algo melhor:

  1. Copie o arquivo para outro local fora do repositório.
  2. SVN Exclua o arquivo.
  3. Confirmar
  4. Copie os arquivos novamente e certifique-se de ignorá-los em confirmações futuras.
srmark
fonte

Respostas:

265
svn delete --keep-local the_file
phihag
fonte
4
Estou recebendo a "svn: invalid option: --keep-local" - É porque estou no 1.4.6?
1111 barfoon
7
@barfoon: Sim, --keep-local está disponível apenas no svn 1.5.0+. Receio que você tenha que copiar manualmente o arquivo antes ou fazer check-out usando o svn cat posteriormente.
Phihag
4
E lembre-se de fazer uma consolidação após esta operação.
Teemu Leisti
4
Quando os usuários atualizam, eles obtêm a versão mais recente do repositório. Como a pergunta pergunta como excluir um arquivo do repositório, outros usuários encontrarão o_arquivo removido quando atualizarem.
Phihag 25/07/14
4
Era isso que eu estava tentando evitar. É tão difícil de apagar algo apenas do SVN uma vez que algo acidentalmente foi verificado em ...
BrDaHa
104

Excluindo arquivos e pastas

Se você deseja excluir um item do repositório, mas mantê-lo localmente como um arquivo / pasta não-versionado, use o Menu de Contexto Estendido → Excluir (manter local). Você deve manter pressionada a tecla Shift enquanto clica com o botão direito do mouse no item no painel da lista do explorer (painel direito) para ver isso no menu de contexto estendido.

Excluir completamente:
clique com o botão direito do mouse em → Menu → Excluir

Excluir e manter local:
Shift + clique com o botão direito do mouse → Menu → Excluir

crashmstr
fonte
61

No TortoiseSVN, você também pode Shift+ clicar com o botão direito do mouse para obter um menu que inclui "Excluir (manter local)".

harpo
fonte
0

Renomeie seu arquivo, confirme as alterações, incluindo o arquivo "excluído" e não inclua o novo arquivo (renomeado).

Renomeie seu arquivo de volta.

Avram
fonte
-2

Quando você deseja remover um arquivo xxx.java do SVN:

  1. Vá para o caminho da área de trabalho em que o arquivo está localizado.
  2. Exclua esse arquivo da pasta (xxx.java)
  3. Clique com o botão direito e confirme, e uma janela será aberta.
  4. Selecione o arquivo que você excluiu (xxx.java) da pasta e clique novamente com o botão direito do mouse e exclua. Ele removerá o arquivo do SVN.
Pavan
fonte
2
Isso excluirá o arquivo - mas não se trata de manter o arquivo original por perto depois de removido do SVN?
Timothy Jones