rebase.page

Static sites for repositories on rebase.now. Push a branch named pages, and it becomes a website.

Atomic updates · Automatic HTTPS · Custom domains

01 — Publish

Your site on rebase.page

  1. Choose the repository

    Its name decides the address. <user> may be a user or an organisation, and the repository must be public.

    • rebase.now/<user>/pageshttps://<user>.rebase.page/
    • rebase.now/<user>/<project>https://<user>.rebase.page/<project>/
  2. Commit the built site to pages

    Commit the output, not the sources: plain HTML or the build of any static generator, with index.html at the top.

    git push origin pages
  3. Add a webhook

    In the repository, open Settings → Webhooks and add a Forgejo webhook:

    Target URL
    the site address above
    HTTP method
    POST
    POST content type
    application/json
    Trigger on
    Push events
    Branch filter
    pages
  4. Push, and it is live

    Every push to pages replaces the site atomically. Visitors keep seeing the previous version until the new one is complete. Recent deliveries in the webhook settings show the result of each update.

02 — Custom domains

Bring your own domain

Publish any repository's pages branch as the whole of a domain. Two DNS records name the repository and route the traffic:

_git-pages-repository.example.org.  TXT    "https://rebase.now/<owner>/<repo>.git"
example.org.                        CNAME  rebase.page.

03 — Good to know

Serving details

Paths

/docs/ serves docs/index.html. Missing paths fall back to /404.html when the site has one.

Redirects

A _redirects file in Netlify syntax, such as /old /new 301. Placeholders and conditions are not supported, and /a differs from /a/.

HTTPS

Certificates are issued automatically, for rebase.page addresses and custom domains alike. Plain HTTP page visits are redirected to HTTPS once the certificate exists.

Limits

Up to 128 MB per site, and each update must finish within a minute. Git LFS files are not served.