1.8.3 • Published 3 years ago

git-client v1.8.3

Weekly downloads
337
License
MIT
Repository
github
Last release
3 years ago

git-client

Promise-based git client that mostly just executes the git binary

Usage

Basic usage

const git = require('git-client');
const hash = await git('rev-parse HEAD');

Multiple arguments

const hash = await git('rev-parse', 'HEAD');

Option building

const hash = await git('rev-parse', { verify: true, short: 6 }, 'HEAD');

Named methods for common commands

const hash = await git.revParse({ verify: true }, 'HEAD');

Advanced Examples

Save file from the web

const writer = await git.hashObject({  w: true, stdin: true, $spawn: true });
const response = await axios.get('https://placekitten.com/1000/1000', { responseType: 'stream' });

// pipe data from HTTP response into git
response.data.pipe(writer.stdin);

// wait for data to finish
await new Promise((resolve, reject) => {
    response.data.on('end', () => resolve());
    response.data.on('error', () => reject());
});

// read written hash and save to ref
const hash = await writer.captureOutputTrimmed();

Build a tree

const lines = [
    '100644 blob bc0c330151d9a2ca8d87d1ff914b87f152036b19\tkitten.jpg',
    '100644 blob 97ab63ad46e50ac4012ac9370b33878b224c4fa3\tcage.jpg'
];

const mktree = await git.mktree({ $spawn: true });

const hash = await mktree.captureOutputTrimmed(lines.join('\n')+'\n');
1.8.3

3 years ago

1.8.2

3 years ago

1.8.0

3 years ago

1.7.1

4 years ago

1.7.0

5 years ago

1.6.2

5 years ago

1.6.1

5 years ago

1.6.0

5 years ago

1.5.1

5 years ago

1.5.0

5 years ago

1.4.0

5 years ago

1.3.0

5 years ago

1.2.5

5 years ago

1.2.4

5 years ago

1.2.3

5 years ago

1.2.2

5 years ago

1.2.1

5 years ago

1.2.0

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago