Update README with restore scripts
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Git Mirror Zip
|
||||
|
||||
Клонировать git-репозиторий полностью (все ветки, теги, refs) и упаковать в zip с максимальным сжатием.
|
||||
Клонировать git-репозиторий полностью (все ветки, теги, refs) и упаковать в zip с максимальным сжатием. Или восстановить бэкап в целевой репозиторий.
|
||||
|
||||
## Требования
|
||||
|
||||
@@ -9,14 +9,18 @@
|
||||
|
||||
## Файлы
|
||||
|
||||
| Файл | ОС | Архиватор |
|
||||
|------|----|-----------|
|
||||
| `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` |
|
||||
| Файл | ОС | Описание |
|
||||
|------|----|----------|
|
||||
| `git-mirror-zip.sh` | Linux | Скачать репо в zip |
|
||||
| `git-mirror-zip-macos.sh` | macOS | Скачать репо в zip |
|
||||
| `git-mirror-zip.bat` | Windows (CMD) | Скачать репо в zip |
|
||||
| `git-mirror-zip.ps1` | Windows (PowerShell) | Скачать репо в zip |
|
||||
| `git-restore-zip.sh` | Linux | Восстановить из zip |
|
||||
| `git-restore-zip-macos.sh` | macOS | Восстановить из zip |
|
||||
| `git-restore-zip.bat` | Windows (CMD) | Восстановить из zip |
|
||||
| `git-restore-zip.ps1` | Windows (PowerShell) | Восстановить из zip |
|
||||
|
||||
## Использование
|
||||
## Бэкап
|
||||
|
||||
```bash
|
||||
# Linux / macOS
|
||||
@@ -32,6 +36,22 @@ git-mirror-zip.bat https://github.com/user/repo.git my-repo.zip
|
||||
|
||||
Второй аргумент (имя zip) опциональный, по умолчанию `repo.zip`.
|
||||
|
||||
## Восстановление
|
||||
|
||||
```bash
|
||||
# Linux / macOS
|
||||
chmod +x git-restore-zip.sh
|
||||
./git-restore-zip.sh my-repo.zip https://git.example.com/user/repo.git
|
||||
|
||||
# Windows CMD
|
||||
git-restore-zip.bat my-repo.zip https://git.example.com/user/repo.git
|
||||
|
||||
# Windows PowerShell
|
||||
.\git-restore-zip.ps1 my-repo.zip https://git.example.com/user/repo.git
|
||||
```
|
||||
|
||||
Скрипт распакует архив, переключит remote на целевой репозиторий и выполнит `git push --mirror`, тем самым восстановив все ветки, теги и refs.
|
||||
|
||||
## Что внутри архива
|
||||
|
||||
`git clone --mirror` копирует:
|
||||
@@ -40,4 +60,4 @@ git-mirror-zip.bat https://github.com/user/repo.git my-repo.zip
|
||||
- Все refs (notes, stash и т.д.)
|
||||
- Полную историю коммитов
|
||||
|
||||
Временная директория `.tmp_git_mirror` создаётся при работе и автоматически удаляется после завершения.
|
||||
Временная директория `.tmp_git_mirror` / `.tmp_restore_mirror` создаётся при работе и автоматически удаляется после завершения.
|
||||
|
||||
Reference in New Issue
Block a user