Как исправить статус Subversion «!» - PullRequest
51 голосов
/ 02 августа 2010

Руководство по Subversion гласит:

'!'

Элемент отсутствует (например, вы переехали или удалил его без использования svn). это также указывает, что каталог неполное (проверка или обновление было прервана).

Но, как это часто бывает с Subversion, нет указаний на то, как решить проблему.

Как правило, я бы использовал доверенный Fix_Subversion.command , но на этот раз это транк, и это займет вечность.

Так есть ли более быстрый вариант?

Ответы [ 5 ]

59 голосов
/ 02 августа 2010
svn revert /path/to/file
svn rm /path/to/file      # if you want to delete it from svn itself

Золотое правило: если что-то находится под контролем svn, любое перемещение, удаление, переименование должно выполняться командами svn (svn mv, svn rm и т. Д.), Не используя обычные функции файловой системы / проводника файлов.

18 голосов
/ 02 августа 2010

Что происходит после запуска:

svn cleanup .
svn update
svn status
4 голосов
/ 23 января 2012

Я попытался восстановить и очистить, но это не решило мою проблему.Решение, которое я нашел, немного грубовато, но сработало:

  1. переименуйте old_folder в new_folder.
  2. из родительской проблемы svn up old_folder
  3. скопируйте обратно файлыиз папки new_folder [избегая копирования папки .svn из папки new_folder].

я удалил папку new_folder, и таким образом мне удалось очистить old_folder.

1 голос
/ 12 января 2017

Если вы удалили файл и он помечен !, просто запустите svn rm --force <filename>, чтобы сообщить SVN также удалить файл из хранилища.

1 голос
/ 02 августа 2010

Что именно вы делали с веткой до того, как получили эту ошибку?

Если у вас регулярно возникают проблемы с SVN, вы, вероятно, делаете что-то не так (например, используете mv / rm вместо svn mv / svn rm на ветке).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...