Search
Write a publication
Pull to refresh
0
@PaulArgentread⁠-⁠only

User

Send message

Пару дней назад решал подобную задачу по полному бэкапу своего и интересующих меня репозиториев GitHub. Но в отличае от автора статьи, помимо git-репозиториев мне нужен был полный бэкап всей остальной инфраструктуры GitHub: issues, comments, stars и т.д.

Сперва так же хотел заняться велосипедостроительством, благо у GitHub простой и обширный API. Но немного погуглив нашел отличное готовое решение: https://github.com/josegonzalez/python-github-backup

Устанавливаем Python последней версии с офф. сайта, если у вас его еще нет.

Далее устанавливаем скрипт в одну строку:

pip install github-backup

или лучше:

pip install git+https://github.com/josegonzalez/python-github-backup.git#egg=github-backup

Далее получаем новый токен в настройках GitHub:

Settings - Developer settings - Personal access tokens

И бекапим!

Для полного бэкапа всех своих репозиториев, со всей инфраструктурой, я использую такую строку запуска в cmd:

python c:\users\user\appdata\local\programs\python\python310\scripts\github-backup -user My_Github_Username --token My_Github_token --output-directory C:\Backup --private --fork --repositories --starred --watched --followers --following --issues --issue-comments --issue-events --pulls --pull-comments --pull-commits --pull-details --labels --wikis --gists --starred-gists --all

Для бэкапа чужого репозитория я использую такую строку запуска в cmd:

python c:\users\user\appdata\local\programs\python\python310\scripts\github-backup -user Other_Author_Github_Username --token My_Github_token --output-directory C:\Backup -R Other_Author_Repository_Name --repositories --issues --issue-comments --issue-events --pulls --pull-comments --pull-commits --pull-details --labels --wikis

У скрипта обширные параметры запуска, бэкап можно настроить на любой вкус.

Information

Rating
Does not participate
Registered
Activity

Specialization

Game Developer, Project Manager