Clean up
Se um comando do SVN não pôde ser concluído com sucesso, talvez devido a problemas no servidor, sua cópia de trabalho pode ser deixada em um estado inconsistente. Ou se precisar fazer um merge com a versão ou trunk.
É importante fazer o clean up no diretório para que todas as units que sofreram alterações mas que não serão salvas no servidor, retornem ao seu estado anterior às alterações, como por exemplo na imagem a seguir:
Observar que, constantemente aparecem units com extensões do tipo: .dproj, .dres, .stat, etc, que geralmente se encontram com o status "non-versioned". Essas units, não devem ser enviadas ao servidor. Por isso, lembre-se de realizar o clean up
A única unit que será efetivamente alterada neste exemplo, é a unit "Funcio2.dfm", as outras apesar de modificadas, não serão efetivamente salvas no servidor, e por isso devem ser eliminadas com o comando Clean up da seguinte forma.
No diretório desejado, clique com o botão direito, selecione a opção "TortoiseSVN" -> "Clean up..." como demonstrado abaixo.
A seguinte tela será aberta com todas a opções de limpeza para deixar sua cópia de trabalho em um estado limpo.
1 - "Clean up working copy status"
Conforme declarado acima, esta opção tenta colocar uma cópia de trabalho inconsistente em um estado funcional e utilizável. Isso não afeta nenhum dado que você tenha, mas apenas os estados internos do banco de dados da cópia de trabalho. Este é o comando de limpeza real que você conhece de clientes TortoiseSVN mais antigos ou outros clientes SVN.
2 - "Break write locks"
Se marcado, todos os bloqueios de gravação são removidos do banco de dados da cópia de trabalho. Na maioria das situações, isso é necessário para que a limpeza funcione!
Apenas desmarque esta opção se a cópia de trabalho for usada por outros usuários / clientes no momento. Mas se a limpeza falhar, você deve marcar esta opção para que a limpeza seja bem-sucedida.
3 - "Fix time stramps"
Ajusta os registros de data e hora de todos os arquivos, acelerando futuras verificações de status. Isso pode acelerar todos os diálogos que mostram listas de arquivos da cópia de trabalho, por exemplo, o diálogo Confirmar.
4 - "Vaccum pristine copies"
Remove cópias originais não utilizadas e compacta todas as cópias originais remanescentes dos arquivos da cópia de trabalho.
5 - "Refresh shell overlays"
Às vezes, as sobreposições de shell, especialmente na visualização em árvore no lado esquerdo do explorer, não mostram o status atual ou o cache de status falhou em reconhecer as alterações. Nessa situação, você pode usar este comando para forçar uma atualização.
6 - "Include externals"
Se esta opção estiver marcada, todas as ações também serão realizadas para todos os arquivos e pastas incluídos na propriedade svn: externals.
7 - "Delete unversioned files and folders, Delete ignored files and folders"
Esta é uma maneira rápida e fácil de remover todos os arquivos gerados em sua cópia de trabalho. Todos os arquivos e pastas sem controle de versão são movidos para a lixeira.
Nota: você também pode fazer o mesmo na caixa de diálogo TortoiseSVN → Reverter. Lá, você também obtém uma lista de todos os arquivos e pastas sem versão para selecionar para remoção.
8 - "Revert all changes recursively"
Este comando reverte todas as modificações locais que ainda não foram confirmadas.
Nota: é melhor usar o comando TortoiseSVN → Reverter, porque lá você pode primeiro ver e selecionar os arquivos que deseja reverter.