Streams a
.tar.gz(or.zip) archive from GitHub using the archive link api. It makes two http requests since the first is always a30xredirect response.
$ npm i github-archive-stream -S
Stream latest master branch of ipfs/go-ipfs to the file 'ipfs.tar.gz'.
const archive = require('github-archive-stream')
archive('ipfs/go-ipfs').pipe(require('fs').createWriteStream('ipfs.tar.gz'))Create an archive stream.
Parameter can either be a string or an object. Use the string version to stream an open source archive. For private repositories you need to provide the opts.auth property, see below.
Options takes the following properties:
{
repo: 'user/repo', // github repository, required
auth: {
user: 'username', // github user, required if private repo
token: 'agithubtoken' // github token, required if private repo
},
ref: '315ae99', // git ref, defaults to 'master'
format: 'zipball' // archive format, defaults to 'tarball'
}MIT