0.1.0 • Published 8 years ago

parse-git-status v0.1.0

Weekly downloads
98
License
MIT
Repository
github
Last release
8 years ago

parse-git-status Build Status

Parse the output of git status --porcelain -z

Install

$ npm install --save parse-git-status

Usage

const parseGitStatus = require('parse-git-status');
const execa = require('execa');

execa('git', ['status', '--porcelain'])
	.then(({stdout}) => {
		console.log(parseGitStatus(stdout));
	});

API

parseGitStatus(gitStatus)

Parses gitStatus and returns an array of StatusObjects.

gitStatus

Type: string

The output of the command git status --porcelain.

--

StatusObject

Each status object in the array has the following format:

let statusObj = {
  x: 'A', // status code character
  y: 'A', // status code character
  to: 'bar.js', // the destination path (or just the path if not renamed)
  from: 'foo.js', // the source path if a rename (null otherwise)
}

See https://git-scm.com/docs/git-status for a list of available status codes and what each status code means.

parseGitStatus.describeCode(code)

Returns a descriptive name for each of the status codes.

parseGitStatus.describeCode('M')
// => "modified"
parseGitStatus.describeCode('A')
// => "added"

code

Type: string of length one (a single character)

Legal values are M, A, D, R, C, U, !, ? and (space character).

See https://git-scm.com/docs/git-status for more details.

License

MIT © James Talmage