Não tenho certeza do que você está tentando fazer: se você adicionou o arquivo via
svn add myfile
você apenas disse ao svn para colocar este arquivo em seu repositório quando fizer seu próximo commit . Não há nenhuma mudança no repositório antes de você digitar um
svn commit
Se você deletar o arquivo antes do commit, o svn
possui em seus registros (porque você o adicionou), mas não pode enviá-lo para o repositório porque o arquivo não existe mais.
Então, ou você quer salvar o arquivo no repositório e então excluí-lo de sua cópia de trabalho: Neste caso, tente pegar seu arquivo de volta (da lixeira?), Faça o commit e exclua o arquivo depois via
svn delete myfile
svn commit
Se você deseja desfazer add
e apenas jogar o arquivo fora, você pode
svn revert myfile
que diz svn
(neste caso) para desfazer a operação add.
EDITAR
Desculpe, não sabia que você está usando o cliente GUI "Versions" para o Max OSX. Portanto, tente reverter o diretório que o contém usando a GUI ou pule na água fria e acione seu shell de comando oculto do Mac :-) (é chamado de "Terminal" no OSX alemão, nenhuma idéia de como abri-lo em inglês versão...)
svn rm
o arquivo, mesmo se ele não existir no diretório.svn add *
adiciona automaticamente todos os arquivos novos não versionados esvn commit
salva imediatamente essas alterações no repositório. Afaik não existe uma operação equivalente para remoção, então se você remover arquivos, você tem que chamarsvn rm
manualmente.svn rm
, mesmo com--force
não funciona - diz eledoes not exist
. Então,svn revert
é a coisa certa a fazer aqui.Eu tive o mesmo problema com versões exibindo a mesma mensagem. Eu simplesmente cliquei com o botão direito nos arquivos ofensivos e selecionei 'Reverter ...' no menu do botão direito e tudo estava bom.
Basicamente, o Versions (na verdade o Subversion) pensa que você ainda deseja adicionar o arquivo, mas não pode encontrá-lo porque você o excluiu do sistema de arquivos. A opção Reverter diz ao Subversion para esquecer de adicioná-lo.
fonte
Adicionar um arquivo e, em seguida, excluí-lo é o tipo de operação considerada um erro - e o SVN está avisando você. Você disse a ele para esperar alguns dados de arquivo e depois não fornecê-los quando você enviar, as luzes vermelhas piscam e as sirenes desligam!
A resposta é desfazer seu add, alternativamente, commitar o arquivo e então usar 'svn rm' para removê-lo do sistema de arquivos e do repo.
fonte
Isso resolveu meu problema semelhante. Eu usei para reverter as mudanças, então adicionei tudo e confirmei as mudanças no terminal com
fonte
Evite usar o Xcode para renomear arquivos em uma referência de pasta. Se você renomear um arquivo usando o Xcode, ele será marcado para confirmação. Se você excluí-lo mais tarde antes do commit, acabará com este erro.
fonte
Acabei de deletar o arquivo do VS e, em seguida, do 'Repository Explorer', copiei o arquivo para a cópia de trabalho.
fonte
Se você estiver usando o TortoiseSVN…
Na janela de confirmação da seção “Alterações feitas”, você pode selecionar todos os arquivos ofensivos, clicar com o botão direito e selecionar excluir. Conclua o commit e os arquivos serão removidos das adições programadas.
fonte