git

Резервное копирование репозиториев с github, gitlab

/
main

Резервное копирование репозиториев с git серверов на основе github и gitlab по токену. Скрипт скачивает все Ваши репозитории доступные по токену и архивирует их. Давно хотел написать такой инструмент т.к. использую и те и те сервера в работе и личных целях. У меня полно старых проектов которые хранятся только на git, если с ним что-то случится, то их уже не будет.

Как пользоваться

Написано на python3, необходимая версии >= 3.7, скачиваем с github, устанавливаем зависимости и запускаем:

git clone https://github.com/dvjdjvu/gitReposDownloader
cd gitReposDownloader

curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg \
&& sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg \
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
&& sudo apt update \
&& sudo apt install gh libomp-dev -y

pip3 install -r requirements.txt

Скачиваем репозитории:

./src/main.py -s github.com -t ghp_TOKEN

Для работы с gitlab используется модуль python-gitlab. Взаимодействие с github идет через утилиту gh, которая запомнит токен. Удалить токен из памяти gh:

gh auth logout

В директории запуска скрипта создается архив имя_сервера.tar.gz или скрипт выводит ошибку причины не скачивания репозиториев.

Скачивание распараллелено в multiprocessing.cpu_count() потоков.

Previous Story

Мой MikroTik – моя цифровая крепость (часть 4)

Next Story

Основные команды SQL, которые должен знать каждый админ.

Latest from Blog

KeyCloak SSO

перевод статьи: https://cloudinfrastructureservices.co.uk/install-keycloak-sso-on-ubuntu-20-04/ Keycloak – это бесплатное решение для управления идентификацией и доступом с открытым исходным кодом

FreeRADIUS и Daloradius

Что такое сервер freeRADIUS? RADIUS — это протокол AAA (аутентификация, авторизация и учет), который помогает контролировать

Установка и настройка HAProxy на Linux

Данная инструкция применима для Linux CentOS и Ubuntu. Мы рассмотрим как процесс установки, так и примеры настройки. УстановкаПринцип настройки 

0 £0.00