Скрипт полной миграции из GitLab на свой сервер и настройка Git для одновременного fetch/push в несколько remotes
1. Что сделал? Переехал с GitLab на свой сервер, написал свой python-скрипт, который мигрирует не просто все репозитории, но и настройки, описания, картинки(done) и мердж/пулл-реквесты(in-progress). Бонусом настроил простой git fetch/push одновременно на все GitLab, GitHub, ... remotes. 2. Зачем? Локальный сервис независим от РКН, КВН, "чебурнета" и гео-блокировки аккаунта, бэкап под контролем, без опасения утечек из облаков по независящим причинам. 3. Как? Когда у тебя несколько десятков pet-проектов на Gitlab/Github, для каждого копи-пастить git clone/push --mirror со многими параметрами и вручную копаться в web интерфейсах откровенно "скучно и лениво". В статье: поиск решения по полной миграции, комментарии по коду и настройки скрипта. Вторую часть по мульти git fetch/push оформляю Гуглил похожие решения, не нашел. В итоге написал свое.
https://habr.com/ru/articles/984578/
#gogs #mirroring #migrate_api #python #selfhosted #git #migration #automation #gitlabapi #gogsapi