Git Deployments

Push to deploy.
Across every site.

Connect your GitHub or Bitbucket repos to your WordPress sites. Push to your branch, and WPGrip pulls the code to every connected site over SSH. One repo can deploy to dozens of sites at once.

deployment log
→ Webhook received · github/acme/starter-theme · push main
  Commit: a3f9c12 "Fix header spacing on mobile"
  Author: [email protected]
→ Deploying to 3 connected sites...
  [1/3] client-site.com
    → SSH connected
    → git pull origin main
    → wp cache flush
    ✓ Deployed in 4s
  [2/3] agency-portfolio.net
    → SSH connected
    → git pull origin main
    → wp cache flush
    ✓ Deployed in 6s
  [3/3] shop.example.com
    → SSH connected
    → git pull origin main
    → wp cache flush
    ✓ Deployed in 5s
✓ All 3 sites deployed in 15s
Push to Deploy

Push your code. WPGrip does the rest.

When you push to your tracked branch, a webhook fires. WPGrip receives it, connects to every site linked to that repo over SSH, and pulls the latest code. You see the full deployment log in real time.

  • Webhook-triggered deployments on push
  • Full real-time deployment log
  • Deploy to one site or many at once
  • SSH-based git pull — no FTP, no file uploads
  • Automatic WP cache flush after deploy
How It Works

From git push to live site in seconds

Connect a repo, pick a branch, link your sites. Every push to that branch triggers a deployment to every connected site. No CI/CD pipeline to configure. No build server to maintain.

Step 01

Connect your repo

Link your GitHub or Bitbucket repository. WPGrip sets up the webhook automatically.

Step 02

Pick your branch

Choose which branch to track — main, production, staging. Different sites can follow different branches.

Step 03

Link your sites

Connect one or more WordPress sites to the repo. A theme repo can power 20 client sites at once.

Step 04

Push and deploy

Push to your branch. The webhook fires. WPGrip pulls the code to every linked site over SSH.

Shared Repos

One repo. Many sites.

If you build a starter theme or a custom plugin that runs on multiple client sites, you don't want to deploy to each site manually. Link the repo once, connect every site that uses it, and every push deploys everywhere.

  • Connect a single repo to unlimited sites
  • Deploy a shared theme across your entire client base
  • Push a plugin update to every site that uses it
  • Each site pulls independently — one failure doesn't block others
  • See per-site deploy status in the log
shared repositories
github / acme / starter-theme main
client-site.com agency-portfolio.net shop.example.com
3 sites connected
gitlab / agency / core-plugin production
client-site.com shop.example.com legacy-blog.org staging.project.io new-build.dev partner-site.co demo.agency.com
7 sites connected
bitbucket / client / wp-config main
staging.project.io
1 site connected
branch → site mapping
github / acme / starter-theme
main
Production
→ client-site.com, agency-portfolio.net
staging
Staging
→ staging.project.io
development
Development
→ local.dev.test
Branch Management

Different branches for different environments

Map branches to environments. Your production sites follow the main branch. Staging sites track the staging branch. Development sites pull from dev. Each push only deploys to the sites following that branch.

  • Map any branch to any set of sites
  • Production, staging, and dev environments from one repo
  • Push to staging without touching production
  • Promote code by merging branches — deploys follow
  • Branch-level control for safe, staged rollouts
Rollback

Deployed a bug? Roll back to any commit.

Every deployment is logged with its commit hash. If a deploy breaks something, you can roll back to any previous commit from the dashboard. WPGrip checks out the specified commit on the server over SSH — your site is back to the working version.

  • Roll back to any previous commit
  • One-click rollback from the deployment history
  • Rollback deploys across all connected sites
  • Full log of what was rolled back and when
  • No git knowledge needed — pick the commit, click rollback
rollback · client-site.com
✗ Deploy failed — site returned 500 after deploy
  Commit: b7e2d41 "Refactor query logic"
→ Rollback requested to a3f9c12
→ SSH connected to client-site.com
→ git checkout a3f9c12
→ wp cache flush
✓ Rolled back to a3f9c12
✓ Site returning 200
✓ Rollback complete in 3s
deployment history
Recent Deployments client-site.com
a3f9c12 Fix header spacing on mobile
sarah · 2 min ago
Deployed
b7e2d41 Refactor query logic
sarah · 18 min ago
Rolled back
c91fa08 Add testimonials block
james · 2 hours ago
Deployed
d4b3e77 Update footer nav links
sarah · 5 hours ago
Deployed
e28cc91 Bump plugin version to 2.1
james · Yesterday
Deployed
Deployment History

A complete record of every deploy

Every deployment is logged with the commit hash, message, author, timestamp, and outcome. You know exactly what code is running on every site, when it was deployed, and by whom. If something goes wrong, you have the full trail.

  • Full history of every deployment per site
  • Commit hash, message, and author logged
  • Timestamps for every deploy and rollback
  • Status tracking — deployed, failed, rolled back
  • Filter by site, repo, or date range

Ship code without touching a server

Free trial. No credit card. No plugins to install.