Я пытаюсь удалить файл в удаленном хранилище с пробелом.
svn delete -m "Deleting file" "https://svn.xyz.edu/applications/workshop/H Y P W 2011_2.pdf"
Я получаю сообщение об ошибке
svn: URL 'https://svn.xyz.edu/applications/workshop/H%2520Y%2520P%2520W%25202011_2.pdf' does not exist
Как решить эту проблему и удалить файл
По какой-то причине он пытается удвоить URI-кодировку URL. Он меняет пространство на %20, затем % заменяет его закодированное значение %25, давая вам %2520.
%20
%
%25
%2520
Попробуйте вставить туда %20 самостоятельно:
svn delete -m "Deleting file" "https://svn.xyz.edu/applications/workshop/H%20Y%20P%20W%202011_2.pdf"
Если вы используете TortoiseSVN, пожалуйста, используйте команду «Удалить» на локальном компьютере, затем подтвердите SVN.Я пытался на моей стороне, это работает.
Да, это действительно старый вопрос, но сегодня мне это нужно, поэтому вот ответ.
Возможно, вы отключились ошибка # 3636 в Subversion, которая была исправлена в Subversion 1.6.12
Обновите Subversion до 6.1.12 или выше, если вы используете старую версию.
Не можете обновить по какой-то причине? Еще не все потеряно. Вы можете переименовать каталог, чтобы в нем не было пробелов, а затем удалить этот каталог
svn mv "https://svn.xyz.edu/url with spaces" https://svn.xyz.edu/urlwithoutspaces -m "subversion issue #3636" svn delete https://svn.xyz.edu/urlwithoutspaces
почему бы вам не проверить репо и не зафиксировать удаление?
Попробуйте вручную вставить кодированный пробел:
H+Y+P+W+2011_2.pdf
или
H%20Y%20P%20W%202011_2.pdf
Попробуйте:
, который будет правильно кодировать URL-адреса.