1.0.4 • Published 8 years ago

repomine v1.0.4

Weekly downloads
4
License
ISC
Repository
github
Last release
8 years ago

repomine

Basic usage

repomine.update({
    path: './destination_directory',
    repos: [{
        dir: 'repository-dir-name',
        git: 'https://github.com/link/to/repository'
    }]
})

Info

Repomine update() method verifies target path and then clones or fast forwards repositories returning ES6 promise object.

decorating settings object passed as a parameter.

Promise should always resolve with settings object, passed as a parameter, decorated with fullPath propery and additionally each repo object will get couple of properies: ready and error.

If error occurs during clonning or updating it will be attached to individual repo object on repos property.

Notes

Original gitnode package has been replaced with much slower, simple-git, due to issues with cloning private repositories. Following nodegit blog post solves cloning issues only, fetching authentication still fails, original commit is here

Currently used simple-git library is a wrapper executing shell commands. That means git has to be configured on local box.

Example

Executing below code from local folder

var repomine = require('repomine')

repomine.update({
    path: './tmp',
    repos: [{
        dir: "jewelines",
        git: "https://github.com/indieforger/page-jewelines"
    },{
        dir: "xenoempires",
        git: "https://github.com/indieforger/page-xenoempires",
        ignore: true
    }]
}).then((obj) => {
    console.log(obj)
}, (err) => {
    console.log(err)
})

Should output something like

{ path: './tmp',
  repos:
   [ { dir: 'jewelines',
       git: 'https://github.com/indieforger/page-jewelines',
       ready: true,
       error: null },
     { dir: 'xenoempires',
       git: 'https://github.com/indieforger/page-xenoempires',
       ignore: true,
       ready: false,
       error: [Error: Repository was ignored] } ],
  fullPath: '/Users/Indieforger/repomine/node_modules/verify-path/tmp' }
1.0.4

8 years ago

1.0.3

8 years ago

1.0.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago