git-refresher
v0.1.1
Published
Automatically refreshes the deploy branch
Downloads
16
Readme
Git Pulse
This tool will automatically pull the latest changes from a remote git repository and restart all PM2 processes after rebuilding the project.
Installation
npm i -g git-refresher
Optionally, you can choose to install the utility locally to the project:
# Using NPM
npm i git-refresher
# Using Yarn
yarn add git-refresher
Usage
You can use the CLI program directly using the following command:
git-refresher
This will check if the current branch is deploy
and if it is out of sync with
origin/deploy
. If it is, it will pull the latest changes and restart all PM2
processes.
You can also specify the branch if you want to use a different one other than
deploy
:
git-refresher --branch main
Automating with PM2 (global install)
Add this app to your pm2.json
ecosystem file:
{
"apps": [
{
"name": "gitRefresher",
"script": "git-refresher",
"autorestart": false,
"cron_restart": "*/5 * * * *"
}
]
}
This will have the program run every 5 minutes, but you can adjust the cron to any value you want.
Note: Because git-refresher
will restart all PM2 processes, the script will run once
more after the app is repo is updated.
Automating with PM2 (local install)
If you've installed git-refresher
locally to the project (not using npm i -g
), then
you must add this app to your pm2.json
ecosystem file instead:
{
"apps": [
{
"name": "gitRefresher",
"script": "npx",
"args": ["git-refresher"],
"autorestart": false,
"cron_restart": "*/5 * * * *"
}
]
}
This uses npx
instead to run git-refresher
instead of running the globally installed bin.