Код для моего сайта использует этот фрагмент кода для автоматического развертывания на сервере (Ubuntu).
cmd = 'cd ' + checkout_dir + ' && ' + svn_command + " st | awk '{print $2}' | grep -v ^deploy | tac | xargs -r" + svn_command + " revert -R && " + svn_command + ' up -r ' + options.revision
То, что делает эта команда, это cd
в каталоге checkout, запускает svn status
, а затем извлекает имя файла ($2
), удаляет каталог deploy
и все его файлы из списка (я не хочу вернуть его). Если аргументов нет, он не запускает команду svn revert, иначе это произойдет.
К сожалению, xargs -r
не работает на моей машине (Mac OS X 10.8). Поэтому я застрял здесь, может ли кто-нибудь помочь?