Ответ 1
Благодаря эта ссылка для решения, которое работало на Mac с svn
, установленным через brew
.
cd {work-dir-base}
sqlite3 .svn/wc.db "delete from work_queue"
Не думая, я добавил и передал файл через мою систему osx, в которой был знак вопроса, не думая о том, как это повлияет на окна. В Windows, когда я сделал обновление, он не удался, потому что он не смог создать файл с? в нем я вернулся к своей системе osx и сделал переименование svn в файле, однако в окнах это не помогло, так как svn просматривает историю всех шагов, чтобы довести рабочее пространство до версии главы. Излишне говорить, что я застрял, любые идеи, как я могу это исправить?
Вот мой текущий журнал ошибок svn при обновлении (с использованием Tortoise SVN и командной строки оба одинаковы):
svn: E155009: Failed to run the WC DB work queue associated with 'F:\Devel\bc\dev\trunk\appShare\media\frontend\?_12x15.png', work item 53314 (file-install appShare/media/frontend/?_12x15.png 1 0 1 1) svn: E720123: Can't move 'F:\Devel\bc\dev\trunk\.svn\tmp\svn-68A36D23' to 'F:\Devel\bc\dev\trunk\appShare\media\frontend\?_12x15.png': The filename, directory name, or volume label syntax is incorrect.
Каждый раз, когда я это делаю, я должен удалить записи в таблице WORK_QUEUE в wc.db, а затем выполнить очистку, прежде чем svn позволит мне попробовать что-то еще.
Благодаря эта ссылка для решения, которое работало на Mac с svn
, установленным через brew
.
cd {work-dir-base}
sqlite3 .svn/wc.db "delete from work_queue"
То есть удалить папку через svn в окне windows, содержащем файл с плохим именем. Это должно сказать svn, что не стоит обновлять эту папку, если он видит локальное удаление, которое еще не было зафиксировано. Если вы сделаете это, сначала сделайте резервную копию своих файлов, чтобы вы могли заново создать папку и снова добавить все файлы (разумеется, названные правильно).
Конкретно:
Вот шаги, которые я сделал, чтобы избавиться от этой ошибки
Загрузите sqlite с сайта https://www.sqlite.org/download.html, загрузите предварительно скомпилированные двоичные файлы для Windows. Я скачал sqlite-tools-win32-x86-3200100.zip, который содержит .exe из sqlite
Извлеките zip и добавьте путь, по которому вы сохранили sqlite3.exe, в переменную PATH Windows.
У меня также возникла аналогичная проблема:
Я удалил локальную папку (для которой были выгружены файлы svn). После этого ни одна из команд svn не работала нормально, даже из командной строки cmd (admin), также svn cleanup не работал.
Fix:
Мы столкнулись с этой проблемой, потому что MalwareBytes Ransomware Protection был включен вместе с несколькими другими компонентами MalwareBytes.
Другие сообщают, что Bitdefender вызвал эту проблему, как на MacOS, так и на Windows.
Фактическая ошибка, которую мы видели, была
Невозможно переместить 'xxx' в 'yyy': доступ запрещен.
Также нарушена возможность запуска операции очистки.
Это похоже на состояние гонки - файл-нарушитель меняется каждый раз. Отключение компонента Ransomware Protection решило проблему.
Создание .svn/tmp
решило проблему, в моем случае
Просто удалите .svn\tmp в рабочей области. Работайте для меня.
Закрытие всех экземпляров визуальной студии исправляет проблему для меня.
Для пользователей Windows.
Я только что открыл файл в блокноте (в моем случае файл без него), дал ему модификацию (введите, например) и сохранил файл. После этого я смог очистить.
Чтобы решить проблему в Windows 7, допустим, что в вашей папке X не происходит очистки, есть еще одна папка с именем A, в которой возникает проблема. Просто извлеките папку A в другом месте и скопируйте ее обратно (конечно, без кэшированной папки .svn) в X, а затем запустите очистку, обновление и т.д.
спасибо @PipoTells у меня работает