Package Exports
- git-spawned-stream
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (git-spawned-stream) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
git-spawned-stream
Create a readable stream from a spawned git process.
Usage
gitSpawnedStream(repoPath, spawnArguments, limitInBytes, gitBinary)Arguments:
repoPath- the path to the repo, ex: /home/alex/node/.git (or the path to the git bare repo)spawnArguments- the arguments that will be passed to thechild_process.spawnfunctionlimitInBytes- kill the process if it exceeds the imposed limit (sends more data than allowed)gitBinary- path to the git binary to use (use the one inPATHby default)
Example:
var gitSpawnedStream = require('git-spawned-stream');
var path = require('path');
var repoPath = process.env.REPO || path.join(__dirname, '.git');
repoPath = path.resolve(repoPath);
var byteLimit = 5 * 1024 * 1024; // 5 Mb
// sort of a git log -n 2
var stream = gitSpawnedStream(repoPath, [
'rev-list',
'--max-count=2',
'--header',
'HEAD'
], byteLimit);
stream.on('data', function(data) {
console.log('DATA', data.toString('utf8'));
}).on('error', function(err) {
console.error('An error occurred:');
console.error('-----------------\n');
console.error(err.message);
process.exit(1);
}).on('end', function(killed) {
// when the stream is cut, killed === true
console.log("\n±±±±±±±±±±±±±±±±±\nThat's all folks!");
});License
MIT