Server Manager/ Help

Deploy a website from a git repo

Paste your repo URL, type your domain, click Clone & deploy.

Don't have a git repo? → Deploy a website from your computer

If your website lives in a public git repo (GitHub, GitLab, Bitbucket, Codeberg, Gitea — any HTTPS git host), Server Manager can clone it directly onto your server. Updates later are a one-click Pull latest from git — no re-upload needed.

1. Open the Set up menu

In the top bar, click Set up. From the menu, choose Deploy from my computer.

Click Set up in the top bar, then choose Deploy from my computer
Click Set up in the top bar, then choose Deploy from my computer

2. Switch the Source to "From a git repo"

A new window opens. Under Source, click From a git repo. The drop zone disappears and a URL field appears in its place.

Switch the Source to From a git repo
Switch the Source to From a git repo

3. Paste your repo URL

Paste the https:// URL of your repo — for example, https://github.com/yourname/mysite. Use the HTTPS form, not the git@ SSH form.

Paste your repo URL into the field
Paste your repo URL into the field

4. Type your domain

Type the address you want the site to live at — for example, mysite.example.com. You can leave it blank to publish at your server's IP for now.

Type your domain in the Domain field
Type your domain in the Domain field

5. Click "Clone & deploy"

Click Clone & deploy at the bottom-right
Click Clone & deploy at the bottom-right

6. Done

The window closes and the chat takes over. We clone your repo onto the server, set up , request a certificate, and reload the proxy. When it finishes, your site appears on the home screen with a green dot — and a **Pull latest from git** button appears in its service panel.

Your new site appears in the overview with a green dot
Your new site appears in the overview with a green dot

Updating later

Click **Pull latest from git** in the site's service panel — we'll git pull your latest commits without re-cloning. For private repos, generate a deploy key from the same panel; pulls won't ask for credentials again. The full breakdown (conflict handling, deploy keys, monorepo subdir behavior) lives in the Pull latest article.

Want to fine-tune things first?

Before clicking Clone & deploy, expand the Advanced (git) section.

The Advanced (git) section expanded — Branch, Subdirectory, Personal access token
The Advanced (git) section expanded — Branch, Subdirectory, Personal access token

Branch. Override the default branch — anything git clone --branch accepts, including tags and commit SHAs.

Subdirectory. For monorepos: deploy just one folder inside the repo (e.g., apps/web). We use sparse-checkout so Pull latest keeps working — only your subdirectory gets materialized but the full .git history is there for future pulls.

Personal access token. For private repos. We use the token once for the initial clone, then scrub it from the local remote URL immediately after. After the deploy finishes, generate a **deploy key** from the service panel for long-lived SSH-based pulls.