A simple and elegant git client base on nodegit.
npm install easy-nodegit --saveSimple git client API, just like using git command:
const GitClient = require('easy-nodegit')
const client = new GitClient('/path/to/repo/work/directory', {
  type: 'ssh',                        // support 'ssh' or 'http', default is 'ssh'
  // when type == 'ssh'
  privateKey: '/path/to/privateKey',  // default is ~/.ssh/id_rsa
  publicKey: '/path/to/publicKey'     // default is ~/.ssh/id_rsa.pub
  // when type == 'http'
  username: '...',
  password: '...'
})
async function test () {
  // clone
  await client.clone('[email protected]:yibn2008/easy-nodegit.git')
  // add
  await client.add([
    'index.js',
    'index.css'
  ])
  await client.add('lib/**/*.js')
  // reset
  await client.reset('index.*')
  // remove
  await client.remove('lib/modules/*')
  // commit
  await client.commit('commit message')
  // pull
  await client.pull()
  // push
  await client.push()
}
test().catch(err => {
  console.error(err)
})see API.md
MIT