gw

Watch local git repositories, keep in sync with remote and run commands.

Motivation #

gw is a lightweight binary that manages a simple pull-based continuous deployment for you. It watches a local git repository, fetches if the remote changes, and builds or deploys your code. Current CD solutions either lock you into proprietary software (e.g. Netlify or Vercel) or complicated to run and manage (e.g. ArgoCD). gw is a service that can run everywhere (even behind NAT or VPN), synchronizes code with your remote and deploys immediately, saving your developers time and energy.

Features of gw:

If you want to see how gw compare to other products: look at the comparisons.

Installation #

To get started with gw, you can use the install script:

curl https://gw.danielgrants.com/install.sh | sh

For more installation methods, see Installation.

Get started #

To use gw, you have to point it to your local repository and it will pull changes automatically. You can run scripts on every pull to build with the --script (or -s) flag or run your deployments with the --process (or -p) flag.

gw /path/to/repo --script 'run build process' --process 'run deployment'

For your first steps with gw, see Get started.

Next steps #

But this is not all gw can do. With a little creativity you can create a lot of things, for example:

...and many thing else. For a complete list, check out the guides page.