Поиск…


Синтаксис

  • git archive [--format = <fmt>] [--list] [--prefix = <префикс> /] [<extra>] [-o <файл> | --output = <файл>] [--worktree-attributes] [--remote = <repo> [--exec = <git-upload-archive>]] <tree-ish> [<путь> ...]

параметры

параметр подробности
--format = <FMT> Формат полученного архива: tar или zip . Если эти параметры не заданы и выходной файл указан, формат выводится из имени файла, если это возможно. В противном случае по умолчанию используется tar .
-l, --list Показать все доступные форматы.
-v, --verbose Сообщите о прогрессе в stderr.
prefix = <префикс> / Prepend <prefix> / для каждого имени файла в архиве.
-o <файл>, --output = <файл> Запишите архив в <файл> вместо stdout.
--worktree-атрибуты Ищите атрибуты в файлах .gitattributes в рабочем дереве.
<Дополнительное> Это могут быть любые параметры, которые понимает сервер архиватора. Для zip бэкенда использование -0 будет хранить файлы без их дефляции, в то время как от -1 до -9 можно использовать для настройки скорости и коэффициента сжатия.
--remote = <репо> Извлеките архив tar из удаленного репозитория <repo> а не из локального репозитория.
--exec = <ГИТ-загрузка-архив> Используется с --remote для указания пути к файлу <git-upload-archive на пульте дистанционного управления.
<Дерево-иш> Дерево или фиксация для создания архива.
<Путь> Без необязательного параметра все файлы и каталоги в текущем рабочем каталоге включены в архив. Если указан один или несколько путей, включены только эти.

Создайте архив репозитория git с префиксом каталога

Считается хорошей практикой использовать префикс при создании git-архивов, так что извлечение помещает все файлы в каталог. Чтобы создать архив HEAD с префиксом каталога:

git archive --output=archive-HEAD.zip --prefix=src-directory-name HEAD

При извлечении все файлы будут извлечены внутри каталога с именем src-directory-name в текущем каталоге.

Создайте архив репозитория git на основе конкретной ветки, ревизии, тега или каталога

Также возможно создавать архивы других предметов, кроме HEAD , таких как ветки, коммиты, теги и каталоги.

Чтобы создать архив локальной ветви dev :

git archive --output=archive-dev.zip --prefix=src-directory-name dev

Для создания архива источника удаленной ветви origin/dev :

git archive --output=archive-dev.zip --prefix=src-directory-name origin/dev

Чтобы создать архив тега v.01 :

git archive --output=archive-v.01.zip --prefix=src-directory-name v.01

Создайте архив файлов внутри определенной подкаталога ( sub-dir ) версии HEAD :

git archive zip --output=archive-sub-dir.zip --prefix=src-directory-name HEAD:sub-dir/

Создание архива репозитория git

С git archive можно создавать сжатые архивы репозитория, например, для распространения релизов.

Создайте tar-архив текущей версии HEAD :

git archive --format tar HEAD | cat > archive-HEAD.tar

Создайте tar-архив текущей версии HEAD с сжатием gzip:

git archive --format tar HEAD | gzip > archive-HEAD.tar.gz

Это также можно сделать с помощью (который будет использовать встроенную обработку tar.gz):

git archive --format tar.gz HEAD > archive-HEAD.tar.gz

Создайте zip-архив текущей версии HEAD :

git archive --format zip HEAD > archive-HEAD.zip

В качестве альтернативы можно просто указать выходной файл с допустимым расширением, и из него будет выведен формат и тип сжатия:

git archive --output=archive-HEAD.tar.gz HEAD


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow