Как удалить все файлы "определенного типа файла" из SVN? - PullRequest
1 голос
/ 24 июня 2011

Есть ли способ удалить все файлы из SVN, имеющие определенный тип файла?

Я хочу сделать это, потому что мой глобальный список игнорирования не работает, я добавил тип файла * .dll к глобальному шаблону игнорирования, но он все еще появляется в диалоге фиксации, и я где-то читал, что "файлы уже зафиксированы чтобы svn продолжал входить в диалог фиксации ", если шаблон игнорирования добавлен после того, как файлы уже были зафиксированы.

Ответы [ 3 ]

2 голосов
/ 25 июня 2011

Выберите файлы .dll, щелкните правой кнопкой мыши -> TortoiseSVN -> Удалить и добавьте в список игнорируемых -> Игнорировать по расширению.

После этого зафиксируйте удаление. Это позволит убедиться, что файлы dll неверсированы (то есть удалены из репозитория, но локальные копии сохранены) и добавлены в список игнорирования.

2 голосов
/ 28 июня 2011

[@ manojlds дал правильный и краткий ответ: эта единственная команда TortoiseSVN экономит трудоемкую многошаговую операцию!Я собирался просто прокомментировать его ответ, но мне нужно было немного больше места]

Пара других полезных моментов:

  1. Если у вас большое деревои много файлов для обработки вы не должны повторить delete-and-ignore для каждого каталога: используйте функцию поиска в проводнике Windows для просмотра спискавсе интересующие вас файлы в одном окне (в вашем случае все dll-файлы во всех подкаталогах).Затем выберите все файлы в результатах поиска (control-A) и действуйте, как описано в manojlds, игнорируя по расширению.

  2. @ manojlds, затем указывает «зафиксировать удаление».Технически, вам нужно зафиксировать оба файлов, помеченных для удаления и содержащий каталог: шаг игнорирования фактически обновляет список игнорирования родительского каталога .Если вы использовали массовый поиск / удаление и игнорирование, как я описал в шаге 1, шаг игнорирования обновляет родительский каталог каждого файла, который вы обработали, поэтому все эти каталоги также должны быть зафиксированы в хранилище.

1 голос
/ 24 июня 2011

К сожалению, SVN не поддерживает постоянное удаление файлов из истории ревизий. http://subversion.apache.org/faq.html#removal

Вы можете попытаться добавить полный путь к конкретному файлу DLL, который вы коммитили ранее и хотите пропустить. Также убедитесь, что он удален на ГОЛОВЕ.

...