Навигация
|
Скрипт синхронизации репозиториев Git и GitLabСкрипт синхронизации репозиториев Git и GitLab Функционал скрипта упрощенно подразумевает следующую логику У насть есть в сети есть сервер с установленным git и еще один сервер с gitlab Нам нужен скрипт, который бы мог синхронизировать репозитории из git в gitlab 10.10.1.10 и 10.10.1.20 адреса серверов 2 режима запуска скрипта: 1. Полность перекачать все репозитории с git, добавить линки на gitlab и запушить 2. Только провести операцию push на gitlab, предварительно сделав pull с git Объяснение Создаем каталог для работы скрипта Описываем функционал в функциях clone, add, pull, push В зависимости от аругмента, переданного скрипту запускаем один из 2 вариантов запуска Составляются списки директорий, названий репозиториев для дальнейшей работы В функциях clone, pull, push довольно все просто, мы читаем из составленных списков строки как команды В функции add мы сопоставляем директории с названиями репозиториев Дело в том, что в git у меня были репозитории с неймспейсами типа admin/configs, / в gitlab я поменял на - Далее вырезаем префикс полной директории к относительному названию репозитория Далее идет обход по папкам репозиториев и команда добавления ссылки на репозиторий в gitlab Далее идет обход по папкам репозиториев и команда push на gitlab Обратите внимание, у меня использовались ветки master, у вас уточняйте самостоятельно Репозитории соответственно в gitlab создаете заранее и прописываете .pub ssh ключ с write permissions
Комментарии пользователей Эту новость ещё не комментировалиНаписать комментарий Анонимам нельзя оставоять комментарии, зарегистрируйтесь! |
Контакты для обмена ссылками между сайтами | Видео к статьям на Youtube |
![]() |
|||||
Мои друзья: | ![]() | ![]() | ![]() | Сообщество сисадминов | ![]() | ![]() |
|
© Snakeproject.ru создан в 2013 году.При копировании материала с сайта - оставьте ссылку. |