# local_machine — репозиторий на Gitea Репозиторий **local_machine** на сервере Gitea (gitea.hunab.app): документация и скрипты для локальной машины. ## Быстрый старт ### 1. Создать репозиторий на Gitea (один раз) **Вариант А — через веб-интерфейс** 1. Открыть: https://gitea.hunab.app 2. Войти под пользователем `hunabgit` (или своим). 3. **New Repository** → Name: `local_machine` → Create Repository. 4. Репо создавать **пустым** (без README / .gitignore). **Вариант Б — через API (если есть токен)** ```bash # Токен: Gitea → Settings → Applications → Generate New Token (write:repository, read:repository) export GITEA_TOKEN="your_token" bash scripts/deployment/gitea/setup-and-push.sh --create-only ``` ### 2. Инициализация и первый пуш **Важно:** сначала создай репозиторий на Gitea (шаг 1), иначе `git push` выдаст ошибку. Из корня **local_machine** (не из родительского репо): ```bash cd /Users/eternal/code/local_machine bash scripts/deployment/gitea/setup-and-push.sh ``` Скрипт: - инициализирует git в `local_machine` (если ещё нет `.git`); - добавляет `origin` (SSH или HTTPS); - делает первый коммит и `git push -u origin main`. Если пуш упал (таймаут или «repository not found»): создай репо по шагу 1, затем снова выполни `git push -u origin main` из каталога `local_machine`. ### 3. Если пуш из РФ зависает По гайду [GITEA_COMPLETE_GUIDE.md](./GITEA_COMPLETE_GUIDE.md): - предпочтительно **SSH** (порт 2223): `git remote set-url origin ssh://git@gitea.hunab.app:2223/hunabgit/local_machine.git` и снова `git push -u origin main`; - либо **пуш через прокси на зеркальный сервер 206.189.35.205** (как в hunabapp): ```bash # Из корня local_machine. Требуется: прокси hsites-ahau, ключ к 206, репо local_machine создан на Gitea на 206. bash scripts/deployment/gitea/git-push-gitea-via-proxy.sh # или с явным хостом: GITEA_SERVER=user@206.189.35.205 bash scripts/deployment/gitea/git-push-gitea-via-proxy.sh ``` Скрипт пробует по порядку: SSH через прокси → HTTPS → bundle (копирование на сервер и `docker exec` в контейнер Gitea). Режим проверки без пуша: `bash scripts/deployment/gitea/git-push-gitea-via-proxy.sh --dry-run`. ## .gitignore В корне проекта настроен `.gitignore`, чтобы не пушить: - системный мусор: `.DS_Store`, `Thumbs.db`; - секреты и ключи: `.env`, `*.pem`, `*.key`, конфиги VPN с ключами (`docs/connectivity/vpn/*.conf`); - артефакты: `node_modules/`, `__pycache__/`, `*.log`, `*.tmp`, кэши и т.п.; - IDE/редакторы: `.idea/`, `.vscode/`, `.cursor/`. Конфиги с приватными ключами (WireGuard и т.д.) в репозиторий не попадают. ## Дальнейшая работа - Клонирование: `git clone https://gitea.hunab.app/hunabgit/local_machine.git` или по SSH: `git clone git@gitea.hunab.app:hunabgit/local_machine.git` - Обычные коммиты и пуш: `git add ... && git commit -m "..." && git push origin main` Полный гайд по Gitea (пуши, SSH, bundle, из РФ): [GITEA_COMPLETE_GUIDE.md](./GITEA_COMPLETE_GUIDE.md).