Git archive: собрать ZIP проекта без каталога .git
git archive собирает файлы выбранного коммита или тега и не включает историю .git. Команда подходит для передачи исходников или подготовки source package конкретного релиза. ????? ??????????? ?????????? ???????? ?????? ??????? ? ????????? ?????? ? ??????? ?????.
Рабочий пример
git archive --format=zip --prefix=app/ -o app-v1.4.0.zip v1.4.0
git archive --format=tar v1.4.0 | gzip > app-v1.4.0.tar.gzУкажите тег или хеш явно, чтобы результат не зависел от текущей незакоммиченной рабочей папки. --prefix добавляет общий каталог внутри архива и предотвращает распаковку поверх текущих файлов.
Частый вопрос
Попадут ли в ZIP игнорируемые локальные файлы?
Нет, архив строится из отслеживаемого Git дерева выбранного коммита. Неотслеживаемые локальные файлы и секреты не включаются.