SSH Git Push¶
The standard deployment method. Push your code via git and Plitho deploys it.
Prerequisites¶
- Your SSH key added to Plitho (see SSH Keys)
- A git repository with your app code
- A
plitho.ymlin the repo root
Setup (One-Time)¶
Add Plitho as a git remote:
git remote add plitho ssh://plitho@your-server:2222/myapp
Note
The SSH username is always plitho. Your identity is determined by your SSH key, not the username in the URL.
Deploy¶
git push plitho main
You'll see the deployment output:
remote: ---- Detecting runtime...
remote: ---- Runtime: node
remote: ---- Installing dependencies...
remote: ---- npm install
remote: ---- Running release scripts...
remote: ---- Configuring nginx...
remote: ---- Provisioning SSL...
remote: ---- Starting app...
remote: ---- Done! App is running on https://myapp.com
Updating¶
Just push again:
git push plitho main
Plitho redeploys automatically — reinstalling dependencies, running scripts, and restarting the process.
Deleting¶
Via SSH:
ssh -p 2222 plitho@your-server rm -f myapp
Or via the dashboard: Apps → your app → Danger Zone → Delete.
How It Works¶
- Your
git pushsends code to Plitho's SSH server on port2222 - Plitho receives the packfile and checks out the code
- It reads
plitho.ymlfrom the pushed commit - Dependencies are installed, scripts run, app starts
Your local git history, branches, and .gitignore all work as expected. Plitho only cares about the code you push.
Troubleshooting¶
Can't push¶
- Make sure your SSH key is added (see SSH Keys)
- Check you're using port
2222:ssh -p 2222 plitho@your-server - Verify the app name matches your
plitho.ymlname
Permission denied¶
Permission denied: you don't own this app
Your SSH key doesn't have access to this app. Only the app owner (or an admin) can push to it.