Ответ 1
Вы можете wget
выйти из репо GitHub, чтобы получить tar файл (archive):
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
вы получите файл с именем "master" из пользовательского репо "repo".
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
получить полный архив.
Он создаст каталог, следующий за именованием, описанным в вопросе который вы упомянули.
Нет необходимости в git для получения архива из GitHub, благодаря службе загрузки "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 в тот же каталог, что и script.
Diogo Quintela предлагает в комментариях:
Следующий пример позволяет загружать, извлекать и вырезать каталог верхнего уровня
curl -L https://api.github.com/repos/octokit/octokit.rb/tarball | tar xz --strip=1