Пакетное скачивание репозиториев Github
Функционал скрипта:
- Клонировать все репозитории одного пользователя
- Клонировать все репозитории нескольких пользователей
- Клонировать все репозитории одной организации
- Клонируйте все репозитории нескольких организаций
- Клонировать все репозитории организации на размещенном Github
- Изменить количество используемых потоков
- Клонировать все репозитории организации вместе со всеми репозиториями членов организации
- Используйте аутентификацию Github в задаче
- Клонируйте аутентифицированные репозитории, к которым имеет доступ аутентифицированный пользователь
- Включите gists
- Сохранить репозитории как username_reponame
- Сохранить репозитории как username/reponame
- Сохранить репозитории как reponame
- Исключить список репозиториев, разделенных запятыми
- Распечатайте только собранные URL-адреса, а затем выйдите
Требования:
Скачать файлы скрипта (репозиторий Github, Mega, Google Drive) в одну папку;
Находясь в папке, выполнить команду: ./githubcloner.py --help;
Если в качестве результата получаете что-то похожее (см скриншот),
Использование:
Клонировать все репозитории одного пользователя.
./githubcloner.py --user user -o /tmp/output
Клонировать все репозитории нескольких пользователей.
./githubcloner.py --user user1,user2,user3 -o /tmp/output
Клонировать все репозитории одной организации.
./githubcloner.py --org organization -o /tmp/output
Клонируйте все репозитории нескольких организаций.
./githubcloner.py --org organization1,organization2 -o /tmp/output
Клонировать все репозитории организации на размещенном Github
./githubcloner.py --org organization -o /tmp/output
--api-prefix https://git.company.com/api/v3
Изменить количество используемых потоков
./githubcloner.py --user user --threads 10 -o /tmp/output
Клонировать все репозитории организации вместе со всеми репозиториями членов организации.
./githubcloner.py --org organization --include-org-members -o /tmp/output
Используйте аутентификацию Github в задаче.
./githubcloner.py --org organization -o /tmp/output --authentication user:token
Клонируйте аутентифицированные репозитории, к которым имеет доступ аутентифицированный пользователь.
./githubcloner.py -o /tmp/output --authentication user:token --include-authenticated-repos
./githubcloner.py --user user -o /tmp/output --include-gists
Сохранить репозитории как username_reponame
./githubcloner.py --user user -o /tmp/output --prefix-mode underscore
Сохранить репозитории как username/reponame
./githubcloner.py --user user -o /tmp/output --prefix-mode directory
Сохранить репозитории как reponame
./githubcloner.py --user user -o /tmp/output --prefix-mode none
Исключить список репозиториев, разделенных запятыми
./githubcloner.py --user user -- exclude_repos repo1,repo2,repo3,...
Распечатайте только собранные URL-адреса, а затем выйдите.
./githubcloner.py --user user --include-gists --echo-urls