Как удалить “-” файл из svn?

Случайно я создал файл "-" (просто минус) в каталоге и фиксировал его. Я должен удалить его потому что его порождение ошибки на других машинах: svn: не Может преобразовать строку от 'UTF-8' до собственного кодирования: svn:? \226? \128? \147

Я могу удалить его из локального каталога с помощью "комнату-i *" или с Python "os.remove ('\xe2\x80\x93')", но те методы не работают с "svn комната".

Как удалить такой файл из репозитория SVN?

5
задан askonecki 28 May 2010 в 12:29
поделиться

4 ответа

Вы можете попробовать svn rm ./-

Это может быть не минус, но похожий символ.

5
ответ дан 18 December 2019 в 10:42
поделиться

try svn rm - -

- означает «остановить чтение параметров».

2
ответ дан 18 December 2019 в 10:42
поделиться

Обычно нужно завершить список опций командной строки с помощью маркера --.

Попробуйте что-нибудь вроде svn rm -- -.

То же самое, если вы хотите удалить каталог из файловой системы: rm -r -- -.

8
ответ дан 18 December 2019 в 10:42
поделиться

В некоторых случаях (например, на консоли) вы не сможете скопировать / вставить нечетный символ. В этой ситуации вы можете использовать подстановку файлов. Рекомендуется выполнить ls перед rm , чтобы убедиться, что вы не включаете в удаление что-то, что хотите сохранить.

Любое односимвольное имя файла:

ls -l ?
rm ?

или любое односимвольное имя файла, которое не является буквенно-цифровым символом или дефисом:

ls -l [^a-zA-Z0-9-]
rm [^a-zA-Z0-9-]

Другой версией (с учетом локали) будет:

ls -l [^[:alnum:]-]
rm [^[:alnum:]-]

Вы можете комбинировать другие списки персонажей и классов в дополнение к большему количеству подстановок и конкретных персонажей.

Удалите любой файл с трехсимвольным именем, которое не начинается с «m», «s» или «y», имеет любой второй символ и заканчивается на «1» или «9»:

rm [^msy]?[19]
1
ответ дан 18 December 2019 в 10:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: