Не удалось завершить транзакцию: уже заблокировано
Я просто попытался добавить и зафиксировать около 25 000 файлов в VisualSVN с помощью TortoiseSVN.
Заблокировано диалоговое окно фиксации (предположительно, я думаю), но через некоторое время из потока, который был заблокирован, я убил Tortoise, надеясь на то, что он будет блокировать меньшие куски файлов за раз.
Теперь я получаю эту ошибку:
Ошибка: Commit failed (подробности следуют):
Рабочая копия 'C:\INTERNAL\Icons\Oxygen 4.10.1' заблокирована.
'C:\INTERNAL\Icons\Oxygen 4.10.1\scalable\places\PaxHeaders.14455' уже заблокирован
Я убил TortoiseProc.exe
и перезапустил VisualSVN пару раз, но я все еще получаю ошибку.
Я также щелкнул правой кнопкой мыши папку и выбрал блокировку Release, но я получаю:
Там ничего не разблокировать. В этой рабочей копии файл не имеет блокировки.
Когда я запускаю svn st
, я получаю огромный длинный вывод всех файлов, ожидающих добавления.
Даже когда я пытаюсь совершить что-то несвязанное (пара драйверов), я получаю ту же ошибку.
Я могу успешно выполнить отдельное репо на том же сервере.
Как я могу освободить блокировку и зафиксировать эти файлы?
Ответы
Ответ 1
Попробуйте выполнить очистку SVN. У меня была такая же проблема, и после этого блокировки прояснились.
В частности, из документации по очистке SVN Tortoise:
Если команда Subversion не может завершиться успешно, возможно, из-за серверных проблем, ваша рабочая копия может быть оставлена в непоследовательной государство. В этом случае вам необходимо использовать TortoiseSVN → "Очистка" на папка. Это хорошая идея сделать это на высшем уровне копия.
В диалоговом окне очистки есть и другие полезные параметры для рабочая копия в чистое состояние.
Очистить статус рабочей копии Как указано выше, этот параметр пытается получить несовместимая рабочая копия в работоспособное и пригодное для использования состояние. Эта не влияет на данные, которые у вас есть, но только внутренние состояния рабочая база данных. Это фактическая команда очистки, которую вы знаете от старых клиентов TortoiseSVN или других клиентов SVN.
Вот скриншот рекомендуемых параметров очистки SVN:
![SVN Cleanup Screenshot]()
Ответ 2
Просто небольшое дополнение к ответу на Иорданию, у меня была такая же проблема, но очистка на поврежденной папке не удалась из-за блокировки. Чтобы исправить это, мне пришлось выполнить очистку SVN в родительском каталоге, а затем в повреждающем каталоге.
Ответ 3
Если вы используете svn на eclipse, попробуйте очистить, но он не сработает. Я предполагаю, что установите Tortoise, затем очистите блокировку блокировки
![введите описание изображения здесь]()