Подключения

Синхронизация с GitHub

Подключайте свой репозиторий, учитывайте безопасное обновление истории и устраняйте расхождения без потери локальной работы.

Перед подключением

Синхронизация связывает проект с вашим репозиторием GitHub. Для неё нужна соответствующая функция тарифа владельца проекта. Если функция недоступна, существующее подключение можно просмотреть и удалить, но новое подключение и синхронизация блокируются. Это ограничение не мешает агенту изменять проект и сохранять локальные версии файлов.

Выберите репозиторий GitHub без ветки main и скопируйте полный HTTPS-адрес. Другие ветки, файлы и коммиты допустимы. Amazi создаст main самостоятельно с историей вашего проекта; сам репозиторий вы создаёте или выбираете заранее.

Если main уже существует, перед удалением сохраните нужную работу в другой ветке. GitHub требует назначить другую ветку основной, прежде чем удалить основную main; защита ветки также может запрещать удаление. Можно выбрать другой репозиторий. Для восстановления доступа к уже подключённому репозиторию нажмите «Обновить подключение» и сохраните main.

Подключение проекта

  1. Откройте диалог подключения GitHub в проекте.
  2. Введите HTTPS-адрес репозитория.
  3. Пройдите авторизацию и установку GitHub для нужного репозитория.
  4. Вернитесь в Amazi и проверьте состояние подключения.

Новый проект можно подключить до создания файлов и коммитов. Amazi автоматически создаст первую ревизию проекта при отправке в GitHub. После нажатия «Продолжить на GitHub» кнопка показывает «Открываем GitHub…» и остаётся недоступной, пока открывается авторизация. Если запрос завершится ошибкой, попытку можно повторить.

При первом подключении Amazi создаёт main и синхронизирует эту ветку. Другие ветки сохраняются. Основная ветка GitHub может называться иначе; после подключения можно назначить новую main основной в настройках GitHub.

После подключения в окне показаны репозиторий, ссылка «Открыть GitHub», ошибка синхронизации при её наличии и управление подключением. Коммиты можно посмотреть в GitHub или на вкладке «История» проекта. Раскрывающиеся разделы объясняют синхронизацию и позволяют отключить репозиторий.

Не отправляйте токен GitHub в чат для исправления авторизации. Используйте процесс подключения и проверьте доступ установленного приложения к выбранному репозиторию.

Если подключение не удалось, Amazi показывает причину и способ исправления. Существующая main препятствует новому подключению, даже если её последний коммит совпадает с проектом. Уведомление остаётся видимым, пока вы его не закроете.

При ошибке синхронизации под полем сообщения в чате проекта также появляется жёлтое предупреждение, в том числе при открытых ожидающих действиях. Нажмите в любом месте предупреждения, чтобы открыть подключение GitHub и посмотреть полную ошибку. Пункт GitHub в меню проекта жёлтый, пока сохраняется ошибка, зелёный при подключении без ошибок и обычного цвета, если подключения нет. Предупреждение в чате исчезает после устранения ошибки или отключения репозитория.

Обновление существующего подключения

Нажмите «Обновить подключение» в диалоге GitHub, если доступ перестал работать, в том числе после переустановки GitHub App. Пройдите авторизацию повторно и разрешите приложению доступ к подключённому репозиторию. Amazi проверит, что это тот же репозиторий, в том числе после переименования, и обновит подключение.

Затем Amazi повторит синхронизацию: входящие изменения принимаются через fast-forward, а локальные коммиты отправляются, если история допускает обычный push. Если истории разошлись или синхронизация не удалась, восстановленное подключение сохраняется, а ошибка синхронизации остаётся видимой. Откройте диалог GitHub, чтобы изучить её. Для обновления доступа не нужно удалять main или очищать историю репозитория.

Как работает синхронизация

Перед задачей Amazi проверяет удалённую main и принимает историю, только если возможно прямое продвижение без объединения расходящихся изменений. После создания версии выполняется обычная отправка. Внешние коммиты также могут запускать синхронизацию; активная задача может быть прервана до изменения локальных файлов.

Amazi не выполняет автоматически принудительную отправку, rebase конфликтующей истории или удаление локальных файлов ради успешной синхронизации.

Если история разошлась

Ошибка синхронизации и результат работы агента — разные состояния. Локальная работа и сохранение версии могут завершиться успешно, даже если подключение GitHub сообщает об ошибке.

Прочитайте ошибку и сравните локальную и удалённую историю, прежде чем выбирать восстановление. Если непонятно, какие изменения сохранять, сначала попросите диагностику. Осознанно устраните расхождение или подключите другой репозиторий без main; не повторяйте разрушительные Git-команды ради исчезновения ошибки.

При подтверждённом расхождении Amazi приостанавливает автоматическую синхронизацию этой удалённой версии, чтобы повторные попытки не прерывали новые задачи чата. После исправления истории нажмите «Обновить подключение» для повторной проверки. Новая удалённая версия также запускает новую попытку синхронизации.

Отключение и резервные копии

Отключение удаляет связь в Amazi, а не репозиторий GitHub. Удаление проекта Amazi также не означает разрешения удалить этот репозиторий.

GitHub хранит версионируемые файлы, но не резервирует строки базы, объекты и состояние внешних сервисов. Перед использованием синхронизации как способа восстановления прочитайте Историю и восстановление и Базу данных и хранилище.