From c9ab8fbf15c5931004b8e907b59033522bab4d88 Mon Sep 17 00:00:00 2001 From: antonov Date: Wed, 5 Aug 2026 21:28:35 +0300 Subject: [PATCH] Add README --- README.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..9a96315 --- /dev/null +++ b/README.md @@ -0,0 +1,43 @@ +# Git Mirror Zip + +Клонировать git-репозиторий полностью (все ветки, теги, refs) и упаковать в zip с максимальным сжатием. + +## Требования + +- **Git** — установлен и доступен в PATH +- Никаких дополнительных зависимостей + +## Файлы + +| Файл | ОС | Архиватор | +|------|----|-----------| +| `git-mirror-zip.sh` | Linux | `zip -9` | +| `git-mirror-zip-macos.sh` | macOS | `ditto -c -k` | +| `git-mirror-zip.bat` | Windows (CMD) | PowerShell `Compress-Archive` | +| `git-mirror-zip.ps1` | Windows (PowerShell) | `Compress-Archive` | + +## Использование + +```bash +# Linux / macOS +chmod +x git-mirror-zip.sh +./git-mirror-zip.sh https://github.com/user/repo.git my-repo.zip + +# Windows CMD +git-mirror-zip.bat https://github.com/user/repo.git my-repo.zip + +# Windows PowerShell +.\git-mirror-zip.ps1 https://github.com/user/repo.git my-repo.zip +``` + +Второй аргумент (имя zip) опциональный, по умолчанию `repo.zip`. + +## Что внутри архива + +`git clone --mirror` копирует: +- Все ветки (локальные и удалённые) +- Все теги (лёгкие и аннотированные) +- Все refs (notes, stash и т.д.) +- Полную историю коммитов + +Временная директория `.tmp_git_mirror` создаётся при работе и автоматически удаляется после завершения.