@stackline/git-spawned-stream
v1.0.2
Published
Create a readable stream from a spawned git process.
Maintainers
Readme
@stackline/git-spawned-stream
Create a readable stream from a spawned git process.
Documentation | npm | Issues | Repository
Current package version: 1.0.2
Why this package?
@stackline/git-spawned-stream is the Stackline-maintained distribution of [email protected]. It is an independent continuation of git-spawned-stream; original authors and licenses remain credited below.
Compatibility
| Item | Value |
| :--- | :--- |
| Package | @stackline/[email protected] |
| API target | [email protected] |
| Supported Node.js | See supported framework requirements |
| License | MIT |
| Main entry | index.js |
| Runtime dependencies | debug, spawn-to-readstream |
Installation
npm install @stackline/git-spawned-streamPreserve existing imports and plugin resolution with an npm alias:
npm install git-spawned-stream@npm:@stackline/git-spawned-streamUsage and API reference
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('@stackline/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
Credits and original authors
- Original project: git-spawned-stream.
- Alexandru Vladutu.
- Stackline maintenance: Alexandro Paixao Marques and Stackline contributors.
Original copyright, license notices and contributor acknowledgements remain part of this distribution. Stackline maintenance does not replace authorship of the original work.
Community and Links
Use this repository's issue tracker for reproducible bugs and feature requests. Join r/Stackline for examples, usage questions and release discussions.
