13.2.4. Создание зеркала репозитория
Создание зеркала позволяет автоматически синхронизировать репозиторий Forgejo с внешним Git-репозиторием. Зеркала используются для дублирования репозиториев и организации обмена данными между различными системами управления версиями.
Основные сценарии использования:
перенос проекта в Forgejo с сохранением связи с исходным репозиторием. В этом случае можно создать pull-зеркало, которое будет периодически получать изменения из внешнего репозитория. История коммитов, ветки и теги будут доступны в Forgejo;
сохранение копии проекта во внешней системе. В этом случае можно создать push-зеркало, которое будет автоматически отправлять изменения из Forgejo в удаленный репозиторий.
13.2.4.1. Pull-зеркало удаленного репозитория
Pull-зеркало позволяет получать изменения из внешнего репозитория в Forgejo.
Pull-зеркало можно создать только при создании нового репозитория. Преобразовать существующий репозиторий Forgejo в pull-зеркало через веб-интерфейс невозможно.
Для создания pull-зеркала необходимо:
Нажать кнопку → :
Выбрать источник репозитория:
В поле Перенос/Клонирование по URL указать адрес удаленного репозитория.
Если удаленный репозиторий является приватным, необходимо указать токен доступа в поле Токен доступа. Выбрать необходимые параметры переноса и установить отметку в поле Этот репозиторий будет зеркалом:
Не следует включать параметры переноса, если соответствующие данные отсутствуют в исходном репозитории. Например, выбор переноса задач или релизов при отсутствии таких данных может привести к ошибке миграции.
Нажать кнопку Перенос репозитория.
После создания зеркала Forgejo будет периодически получать изменения из удаленного репозитория.
13.2.4.2. Создание push-зеркала
Push-зеркало позволяет автоматически отправлять изменения из репозитория Forgejo во внешний Git-репозиторий.
Для добавления push-зеркала в существующий репозиторий необходимо:
Открыть настройки репозитория.
Перейти в раздел .
Указать URL удаленного репозитория:
Настроить параметры авторизации.
Нажать кнопку Добавить push-зеркало.
Для доступа к удаленному репозиторию могут использоваться:
При использовании SSH-авторизации Forgejo генерирует пару ключей. Публичный ключ необходимо добавить в настройках удаленного репозитория или учетной записи, имеющей права на отправку изменений.
Дополнительно можно настроить:
В этом разделе также можно:
просмотреть состояние синхронизации;
вручную запустить синхронизацию;
скопировать сгенерированный SSH-публичный ключ.
Зеркалирование не заменяет полноценное резервное копирование. При удалении данных в исходном репозитории изменения могут быть также переданы в зеркало. Для защиты от потери данных необходимо использовать отдельную систему резервного копирования.