У меня довольно сложная настройка развертывания для нашего сайта Drupal, которая представляет собой комбинацию CVS и SVN. Мы используем CVS для получения новейших версий модулей и разворачиваемся с помощью SVN. К сожалению, когда обновления CVS удаляют файлы, Subversions жалуется, потому что они не были удалены в SVN. Я пытаюсь выполнить некоторые сценарии оболочки и Perl запустить команду svn rm
для всех этих файлов, которые уже были удалены из файловой системы, но я не продвинулся далеко То, что у меня так далеко, это:
svn st | grep !
Выводит список всех файлов, удаленных из файловой системы, следующим образом:
! panels_views/panels_views.info
! panels_views/panels_views.admin.inc
! contexts/term.inc
! contexts/vocabulary.inc
! contexts/terms.inc
! contexts/node_edit_form.inc
! contexts/user.inc
! contexts/node_add_form.inc
! contexts/node.inc
etc. . .
Однако я хочу как-то запустить svn del
для каждой из этих строк. Как я могу получить эти выходные данные в моем Perl-скрипте или, альтернативно, как я могу запустить svn del
на каждой из этих строк?
Редактировать: Точная команда, которую я использовал, с некоторой помощью от всех, была
svn st | grep ^! | cut -c 9- | xargs svn del