svn st | cut -c 8- | sed 's/^/\"/;s/$/\"/' | xargs tar -czvf ../backup.tgz
Команда выполняет следующие действия:
1. svn st
— выводит статус всех файлов в репозитории SVN, включая локальные изменения.
2. cut -c 8-
— удаляет первые 7 символов каждой строки вывода, чтобы получить только имена файлов.
3. sed 's/^/\"/;s/$/\"/'
— добавляет двойные кавычки в начало и конец каждой строки вывода, чтобы обработать имена файлов с пробелами.
4. xargs tar -czvf ../backup.tgz
— передает имена файлов из предыдущего шага в команду tar
, чтобы создать архив backup.tgz
со сжатием и сохранить его в родительской директории.
Альтернативой может быть использование других инструментов для архивирования файлов с локальными изменениями, например, git
или zip
.