Вы можете wget
выйти из репозитория GitHub, чтобы получить tar-файл (архив):
wget --no-check-certificate https://github.com/User/repo/archive/master.tar.gz
# better, if the certificate authorities are present:
wget https://github.com/User/repo/archive/master.tar.gz
предоставит вам файл с именем «мастер» из пользовательского репозитория «Пользователь».
обновленная версия 3 URL-адрес API:
https://api.github.com/repos/User/repo/:archive_format/:ref
#
# two possibilities for fomat:
https://api.github.com/repos/User/repo/tarball/master
https://api.github.com/repos/User/repo/zipball/master
# from github example:
$curl -L https://api.github.com/repos/octokit/octokit.rb/tarball > octokit.tar.gz
Затем можно tar xpvf master
, получив полный архив. Он создаст каталог в соответствии с соглашением об именах, описанным в упомянутый вами вопрос.
Для получения архива с GitHub не требуется двоичный файл git благодаря их служба загрузки Nodeload.
ligemer
предложил в отредактируйте следующий пример:
Правка 2016-08-25 — Пример оболочки с Wget, Variables и Untar:
#!/bin/bash -ex
# arguments:
# token = $1
# organization = $2
# repo name = $3
# branch = $4
wget --header="Authorization: token ${1}" --header="Accept:application/vnd.github.v3.raw" -O - https://api.github.com/repos/${2}/${3}/tarball/${4} | tar xz
Звонить через:
$ scriptName.sh token my-organization site.com master
Приведенная выше команда загрузит и извлечет папку Github в тот же каталог, что и скрипт.
Диого Квинтела предлагает в комментариях:
Следующий пример позволяет загружать, извлекать и вырезать каталог верхнего уровня.
curl -L https://api.github.com/repos/octokit/octokit.rb/tarball | tar xz --strip=1
person
VonC
schedule
04.12.2011