Git Manager deploys websites straight from a Git repository (GitHub, GitLab, Bitbucket or your own Git server). Clone a repository into your account once, then update the site with Pull & Deploy — manually or automatically with a webhook every time you push.
Where to find it: Addons → Git Manager.
Note: Git Manager must be enabled by your hosting provider. If you see Git Manager Not available, ask them.
Clone a repository
- Click Add New (Clone Repository).
- Repository URL — the clone address of your repository:
• public repositories:https://github.com/user/project.git
• private repositories: the SSH address, for examplegit@github.com:user/project.git(see Deploy key below) - Target Directory — the folder in your account to clone into, for example
public_html/app. The folder should be empty. - Branch — the branch to deploy, for example
main. - Name (optional) — a label for the repository.
- Click Clone.
Note: For security, some folders cannot be used as a target: .cwp, .trash, etc, mail, ssl and public_html/cgi-bin.
Managed repositories
The list shows each repository with its directory, branch, authentication type and the date it was added. Actions:
| Action | What it does |
|---|---|
| Pull & Deploy | Fetches the newest commits of the branch and updates the files in the target directory |
| View Log | Shows the output of the last clone or deploy |
| Deploy Key | Shows the public SSH key of this repository (see below) |
| Webhook | Shows the webhook URL for automatic deployment |
| Remove | Stops managing the repository |
Private repositories (deploy key)
- Open Deploy Key for the repository and copy the public key.
- Add it to your repository as a read-only deploy key:
• GitHub: repository → Settings → Deploy keys → Add deploy key.
• GitLab: project → Settings → Repository → Deploy keys.
• Bitbucket: repository → Repository settings → Access keys. - Use the SSH repository URL when cloning.
Automatic deployment (webhook)
- Open Webhook and copy the URL.
- In your Git hosting add a webhook for push events with that URL:
• GitHub: Settings → Webhooks → Add webhook (content typeapplication/json).
• GitLab: Settings → Webhooks. - Push a commit — the site updates automatically.
Warning: Git deploys overwrite tracked files in the target directory. Do not edit those files on the server — commit changes to the repository instead. Keep secrets such as database passwords out of the repository (use a config file that is not tracked).
Common problems
| Problem | Solution |
|---|---|
| Permission denied (publickey) when cloning | The deploy key is not added to the repository, or you used the HTTPS URL for a private repository. |
| Clone fails because the folder is not empty | Choose an empty or new target directory. |
| The webhook does nothing | Check the URL and that the webhook sends push events for the configured branch. Look at View Log. |
| Website shows old files | Click Pull & Deploy and clear any site cache. |