Как я могу удалить все неверсированные / проигнорированные файлы / папки в моей рабочей копии?

Если у меня есть рабочая копия хранилища Subversion, есть ли способ удалить все неверсионные или проигнорированные файлы в этой рабочей копии с помощью одной команды или инструмента? По сути, я ищу SVN аналог git clean .

Либо командная строка, либо решение с графическим интерфейсом (для TortoiseSVN) будет приемлемым.

132
задан Nick Meyer 10 May 2010 в 15:18
поделиться

5 ответов

Используя TortoiseSVN:

96
ответ дан 24 November 2019 в 00:07
поделиться

Вы не можете удалить их только с помощью командной строки SVN (не уверен насчет GUI инструментов), если вы работаете в системе linux, это может помочь:

http://www.guyrutenberg.com/2008/01/18/delete-unversioned-files-under-svn/

Другой (жестокий) метод - зафиксировать изменения, удалить все из папки и проверить снова.

1
ответ дан 24 November 2019 в 00:07
поделиться

Использование TortoiseSVN:

  1. Щелкните правой кнопкой мыши корень рабочей копии и выберите TortoiseSVN -> «Проверить наличие изменений»
  2. Выберите «Показать игнорируемые файлы»
  3. Сортировать по столбцу «Статус текста»
  4. прокрутите до файлов с "не версией", которые теперь сгруппированы вместе; выберите их все и щелкните правой кнопкой мыши -> удалить
  5. перейдите к «проигнорированным» файлам, теперь все сгруппированные вместе; выберите их все и щелкните правой кнопкой мыши -> удалить

Не совсем красивое и чистое решение, но это самый быстрый способ, который я знаю (в Windows).

Спасибо pkh за подсказку с проигнорированными файлами.

5
ответ дан 24 November 2019 в 00:07
поделиться

Этот вкладыш может помочь вам:

$ svn status | grep '^?' | awk '{print $2}' | xargs rm -rf

Используйте с осторожностью!

41
ответ дан 24 November 2019 в 00:07
поделиться

Это похоже на другие ответы, но фактически получает игнорируемые файлы (обратите внимание на «I» в RE):

 rm -rf `svn status --no-ignore | grep '^[\?I]' | sed 's/^[\?I]//'`
4
ответ дан 24 November 2019 в 00:07
поделиться
Другие вопросы по тегам:

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