Rabun Git

A git forge you run yourself.

Self-hosted git over SSH. Users, merge requests, and a small workflow runner. Bring your own editor and web viewer.

Rabun Git stores bare repositories on a machine you administer. Teammates use git. Operators use rgit for users, keys, access, and merge requests.

Terminal session: rgit registers an admin key, then git pushes to ssh://git@HOST:2222.

Remote

SSH repositories

Bare repos on port 2222. Clone and push with ordinary git. Your existing sshd on port 22 stays put.

Review

Merge requests

Open, review, and fast-forward merge from the CLI. Protected main and master stay with admins.

CI

YAML workflows

Small shell workflows in .rabun/workflows on push, tag, and request. No GitHub Actions runner.

The forge

Rabun Git (rgit)

SSH based communication with teams and groups baked in.

People

Users and keys

Create logins, attach SSH keys, and grant read, write, or admin on owner/name.

History

Everyday git

Branches, clones, and tags work as they do on any SSH remote.

Host

Ubuntu pack and push

Ship the binary, env file, and rabun-git.service over SSH. Data lives under /var/lib/rabun-git.

First hour

From a checkout to a remote your team can push.

Install the binary, start serve, register one admin key, then create owner/name.

  1. Install

    cargo install from a clone, then link the rgit command beside rabun-git.
  2. Serve

    Pack-and-push onto Ubuntu, or run init and serve yourself. Health listens on 127.0.0.1:8792.
  3. Push

    git remote add origin ssh://git@HOST:2222/owner/name.git

Read the guide, then start the forge.

Written for people who already use git clone, commit, and push.