sync a remote git url to a local dir at a branch
with npm installed, run
npm install --save git-sync
var gitSync = require('git-sync')
var cronJob = gitSync({
remoteUrl: 'https://github.com/holodex/git-sync',
localDir: __dirname + '/dir',
branch: 'master',
cronTime: '* */15 * * * *'
}, function (err, commit) {
console.log(err, commit.id())
})
possible options
are:
remoteUrl
: a url to a remote git repositorylocalDir
: a path to a local directory to store the git repositorybranch
: an optionalString
to specify the name of a git branchcronTime
: any CronTime format supported by cronnoCertificateCheck
: a boolean for whether or not to disable HTTPS certificate checking
cb
is a function that will be called every time there is an error or after the git repository is updated with a new commit. it will be called node-style, with an Error
(if any) as the first argument and a NodeGit Commit
(if any) as the second argument.
cronJob
returned by gitSync()
is a CronJob which can be .stop()
or .start()
.
if using an HTTPS url (https://github.com/holodex/git-sync
) and you receive the following error:
[Error: The SSL certificate is invalid]
then set the noCertificateCheck
option to true
.
if using an SSH url (git@github.com:holodex/git-sync
) and you receive the following error:
[Error: authentication required but no callback set]
then post in this issue as it's not yet implemented. pull requests welcome! :)