Я пытаюсь создать zip-файл из папки, и я хотел бы исключить .git вложенная папка из результирующего zip-файла.
Я перешел в родительскую папку той, которую хочу заархивировать (называется bitvolution) и я делаю:
zip -r bitvolution.zip bitvolution -x ".git"
Но это не исключает .git вложенная папка.
Я пробовал разные комбинации, -x .git*, -x \.git/*, -x .git/\*, -x \.git/\*. Я также попытался использовать полный путь для аргумента exclude... но просто не добрался туда.
zip -9 -r --exclude=*.svn* foo.zip [directory-to-compress]
Вы также можете добавить --exclude=*.DS_Store* чтобы исключить раздражающий каталог Mac OS X, отобразите файлы метаданных.
Обратите внимание, что выражение, переданное в --exclude использует весь исходный относительный путь к каталогу в качестве исходной строки для сопоставления. Так .svn/* сам по себе не работает; подстановочный знак впереди гарантирует, что он соответствует .svn каталоги в любом месте дерева каталогов.
Если вы используете zsh, команда должна выглядеть следующим образом:
zip -r target_name.zip source_dir -x '/*.git/*'
Если вы используете: zip -r target_name.zip source_dir -x /*.git/*.без "регулярного выражения" zsh будет обрабатываться перед запуском zip. Вы получите сообщение об ошибке: