Skip to content

Latest commit

 

History

History
102 lines (70 loc) · 1.81 KB

.verb.md

File metadata and controls

102 lines (70 loc) · 1.81 KB

Usage

const firstCommit = require('{%= name %}');

The main export is an async function that takes a callback or returns a promise when no callback is passed. A .sync method is also exposed.

Default behavior

The following steps can be customized with options:

  1. Creates a new git repository
  2. Adds a .gitkeep file if the cwd is empty.
  3. git add .
  4. do a first commit with the message "first commit"

promise usage

Returns a promise if a callback is not passed.

firstCommit(cwd[, options])
  .then(res => {
    console.log('stdout: ' + res.stdout);
    console.log('stderr: ' + res.stderr);
  })
  .catch(err => console.log('Error: ', err));

async usage

firstCommit(cwd[, options], function(err, stdout, stderr) {
  if (err) {
    console.error('exec error: ' + err);
    return;
  }
  console.log('stdout: ' + stdout);
  console.log('stderr: ' + stderr);
});

sync usage

firstCommit.sync(cwd[, options]);

Options

options.file

Type: object|boolean

Default: { path: '.gitkeep', contents: '' }

firstCommit.sync('foo/bar', { file: false })

options.message

Type: string

Default: 'first commit'

var options = {message: 'my amazing first commit'};

firstCommit('foo/bar', options, function(err) {
  if (err) {
    console.log(err);
  } else {
    console.log('done!');
  }
});

options.exec

Type: object

Default: undefined

Options to pass to execSync.

var options = {
  message: 'my amazing first commit',
  exec: {
    timeout: 3000,
    killSignal: 'SIGTERM'
  }
};

firstCommit.sync('foo/bar', options);