Streams a
.tar.gz
(or.zip
) archive from GitHub using the archive link api. It makes two http requests since the first is always a30x
redirect 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