A nice Git wrapper for Node.
npm install gity- Simple, chainable API
- Small and only one dependency
- Supports all of the most common git commands
- By default, provides nicely parsed output from commands like
statusandlog
var Git = require('gity'); var git = Git() .add('*.js') .commit('-m "added js files"') .run();var Git = require('gity'); var git = Git() .add('*.js') .commit('-m "added js files"') .status() .run(function(err, res){ // ... { untracked: [], modified: [], created: [], deleted: [] }; });var Git = require('gity'); var git = Git({ pretty: false }) // passes stdout into res .add('*.js') .commit('-m "added js files"') .status() .run(function(err, res){ // ... });var Git = require('gity'); var git = Git({ base: '../repo' }) // sets the base folder to '../repo' .init() .run(function(err, res){ // ... });Create a new instance of Gity.
The available options are:
base: set the base folder to run the command from, defaultprocess.cwd().pretty: give pretty output instead of stdout, defaulttrue.
git.add('-A'); git.add('*.js'); git.add('--All'); git.add('index.js');git.bisect('start'); git.bisect('bad'); git.bisect('good');git.branch(); // (e.g. 'master') git.branch('-D feature');git.checkout('feature'); git.checkout('-b demo');git.clone('git://git.kernel.org/pub/scm/.../linux.git my-linux');git.commit('--short'); git.commit('-m "testing"');git.diff('topic master'); git.diff('Readme.md package.json'); git.diff('git diff --name-status');git.fetch(); git.fetch('origin');git.grep("'time_t' -- '*.[ch]'");git.init(); git.init('-q');git.log(); git.log('git log --no-merges'); git.log('git log --since="2 weeks ago" -- gitk');git.merge('origin/next');git.mv('oldname newname');git.pull(); git.pull('origin master');git.push() git.push('origin master'); git.push('-f origin master');git.rebase('master'); git.rebase('--onto master next topic');git.reset(); git.reset('--soft HEAD^'); git.reset('--hard HEAD~3');git.rm('oldname');git.show('--pretty="format:" --name-only bd61ad98');git.status(); git.status('--porcelain');git.tag('-d X');git.run(); git.run(function(err, res){ if (err) throw err; console.log(res); });MIT