Настройка Git для одновременного fetch/push в несколько remotes. Синхронизация одной командой
Прим: Дополняет мою статью "Скрипт полной миграции из GitLab на свой сервер" . После успешной миграции А что делать со старым репозиторием? Было бы логично использовать GitLab и другие хостинги в качестве вторичных (запасных). Но как это делать? И еще не вручную? Для синхронизации с remotes одновременно на свой Gogs и на все GitLab, GitHub, Bitbucket, ... remotes, об этом и других "хаках" ниже:
https://habr.com/ru/articles/995074/
#git_fetch_push #sync #github #gitflow #bitbucket #gogs #mirroring #git_workflow #gitaliase #devops
Скрипт полной миграции из 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

1. Что сделал? Полная миграция данных . Переехал с GitLab на свой сервер с идеей перенести сразу все (или выбранные) репозитории, при этом не потерять настройки, описания, картинки и...