Neoclassical Piano Montage
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »


    Git Autopull

    Autopull listens on http for git change events (can be configured via Github Webhooks) and when it detects a change, it automatically does a git pull.


    It is recommended to install this globally.

    $> npm install -g git-autopull


    • Currently only works with Github projects. You need to configure a Webhook.
    • The path and secret configured in the webhook need to be passed as environment variables.
    • The working directory needs to be from within the cloned git repository that is being watched.

    Environment variables

    There are a lot of environment variables that can be specified.

    Environment Variable Default Value Description
    WEBHOOK_PATH /event The URL path that the git-autopull client should listen on
    WEBHOOK_SECRET secret The secret configured on github for this webhook
    WEBHOOK_EVENT push An optional filter to specify what event or events (comma separated strings) to listen for. If not specified, it will only listen on push events.
    WEBHOOK_REPO_ID no default If specified, autopull will only happen for this repo
    WEBHOOK_REPO_NAME no default If specified, autopull will only happen for this repo
    WEBHOOK_REMOTE origin The name of the git remote to pull.


    An example raw usage is as below:

    $> WEBHOOK_PATH=/github WEBHOOK_SECRET=secret git-autopull

    Unfortunately, this is less than ideal particularly on server environments. It is better to daemonize this via forever as follows:

    $> [sudo] npm install -g forever
    $> WEBHOOK_PATH=/github WEBHOOK_SECRET=secret forever start -p /usr/local/var/git-autopull -l forever.log -o forever.out -e forever.err -c git-autopull


    • Add support for running arbitrary commands instead of git commands
    • Add binary script which will use forever correctly


    npm i git-autopull

    Downloadsweekly downloads








    last publish


    • avatar