Рабочая копия XXX заблокирована, и очистка не удалась в SVN - PullRequest
576 голосов
/ 24 сентября 2008

Я получаю эту ошибку, когда делаю svn update:

Рабочая копия XXXXXXXX заблокирована Пожалуйста, выполнить команду «Очистка»

Когда я запускаю очистку, я получаю

При очистке не удалось обработать следующие пути: XXXXXXXX

Как мне выйти из этого цикла?

Ответы [ 46 ]

1 голос
/ 21 октября 2011

У меня была эта проблема, когда «очистка» работала, но «обновление» продолжало завершаться ошибкой. Решение, которое работало, состояло в том, чтобы удалить указанную папку с помощью проводника Windows, а не удаления TortoiseSVN (которое помечает удаление как нечто для фиксации в хранилище, а затем я сделал «извлечение», чтобы «обновить» папку из хранилища.

Больше информации о разнице между удалением O / S и удалением SVN здесь: http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-rename.html

В частности:

Когда вы TortoiseSVN → Удалить файл, он немедленно удаляется из вашей рабочей копии, а также помечается для удаления в хранилище при следующей фиксации.

И

Если файл удален через проводник вместо использования контекстного меню TortoiseSVN, диалоговое окно фиксации показывает эти файлы и позволяет также удалить их из управления версиями перед фиксацией. Однако если вы обновите свою рабочую копию, Subversion обнаружит отсутствующий файл и заменит его последней версией из хранилища.

1 голос
/ 26 сентября 2013

В обозревателе решений щелкните правой кнопкой мыши проект, в открывшемся подменю нажмите Subversion и выберите очистку. Это решит проблему, как и для меня. Надеюсь, это сработает.

1 голос
/ 03 марта 2009

SVN обычно обновляет свою внутреннюю структуру (.svn / prop-base) файлов в папке, прежде чем фактические файлы будут извлечены из хранилища. Как только файлы извлечены, это будет очищено. Часто ошибка возникает из-за сбоя или преждевременного отмены «обновления» во время процесса обновления.

  1. Проверьте, что все файлы перечислены в каталоге .svn / prop-base
  2. Удалите все файлы, которые не находятся в папке
  3. Cleanup
  4. Обновление

Теперь обновление должно работать.

1 голос
/ 11 января 2011

Развертывание файлов на месте и новая проверка в том же месте решили эту проблему для меня.

В TortoiseSVN, чтобы развернуть на месте, перетащите правую корневую папку рабочей копии из списка файлов на себя в дереве каталогов и выберите «SVN Export versioned items here» из всплывающего меню , TortoiseSVN замечает, что место назначения совпадает с источником, и предлагает развернуть рабочую копию.

После неверсирования сделайте новую проверку в той же папке (которая теперь содержит неверсионную копию всех ваших файлов). TortoiseSVN предупредит вас, что вы просматриваете существующую папку, но вы можете продолжить.

После этого очистки, обновления и другие операции работали без проблем. Поскольку оба вышеуказанных шага сохраняют локальные модификации, не должно быть никакой потери информации (но, тем не менее, резервное копирование рабочей копии до этого может быть хорошей идеей).

Одно предупреждение: если рабочая копия содержит смешанные версии или незафиксированные изменения свойств, эта информация будет потеряна. Для меня это не частое явление, и, учитывая выбор поврежденной рабочей копии или потерю незафиксированных изменений свойств, я предпочитаю выбрать последнее.

1 голос
/ 12 марта 2009

Была такая же проблема, потому что я экспортировал папку в папку с управлением версиями. Пришлось удалить папку из TortoiseSVN, затем удалить папку из файловой системы (TortoiseSVN не любит неверсированные подпапки ... почему бы и нет ???)

1 голос
/ 29 июля 2015

сделать уборку

  1. Удалить папку .svn.

  2. Выполните svncheckout в корневой папке.

  3. Попробуйте выполнить операцию очистки.

Это решило мою проблему.

1 голос
/ 31 июля 2015

Для меня проблема была с полностью заполненным диском (в моем случае это inodes linux), когда я удалил несколько папок, он снова начал работать.

Ошибка была следующей (при любом svn-действии):

$ svn cleanup
svn: E155004: Run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
svn: E155004: Working copy locked; try running 'svn cleanup' on the root of the working copy ('/my/directory') instead.
svn: E155004: Working copy '/my/directory' locked
svn: E200030: sqlite[S14]: unable to open database file
svn: E200030: Additional errors:
svn: E200030: sqlite[S14]: unable to open database file
1 голос
/ 14 июня 2012

Я сделал следующее, чтобы исправить мою проблему:

  1. Переименовал папку с ошибками, поместив "_" перед имя папки.
  2. Выполнена «Очистка» родительской папки.
  3. Переименовал папку, в которой возникла проблема, обратно в исходное имя.
  4. Сделал коммит.
1 голос
/ 06 июля 2010

Не удаляйте свое решение!

в папке .svn у вас есть файл с именем lock длиной 0 байт

Вы можете удалить все эти файлы из всех папок .svn в вашем решении, и оно будет работать

Это сработало в моем случае

0 голосов
/ 11 февраля 2011

У меня в корневом каталоге был файл, который его испортил. (Нет файлов блокировки, сбой очистки svn и т. Д.) Вся моя проверка составляет> 2 ГБ с медленной скоростью сети, поэтому проверка всего снова не была для меня отличной опцией.

Что сработало для меня:

  1. Вернулось и вернулось изменение в испорчена рабочая копия (# 1).
  2. Проверил еще одну копию репо (# 2) с --depth пустым
  3. Добавлено и зафиксировал файл в новом рабочая копия (# 2).
  4. Обновлено в оригинал рабочей копии (# 1).

Казалось, что я вернулся к нормальной жизни.

...