Browse
Git backend
Git backend
The Git family is currently implemented as backend-git-ssh. Everlock includes its own Git implementation rather than shelling out to the host git binary — the transport layer handles SSH authentication and routing, and the backend handles repository protocol and pack storage in-process.
What it does
- serves Git over SSH using the standard smart protocol (clone, fetch, push)
- stores incoming packs as compressed bundle files, preserving delta encoding
- applies ref updates atomically after each push
- enforces access grants per repository and per user
- smart HTTP Git is planned but not yet shipped
How it fits in the system
The Git backend is not isolated. Site stores are pushed through Git — a git push is how content reaches backend-site-http. System configuration is itself versioned. Git is the update path for all human-authored content.
Quick start
Enable the backends, create a repository, clone and push:
/backends enable git-ssh
/git repo create my-project
git clone ssh://admin@localhost:2222/my-project
cd my-project
git add .
git commit -m "initial"
git push
Sub-pages
- Managing repositories — creating repos, naming rules, the SSH URL format, standalone repos vs site stores
- Pull requests — opening, reviewing, merging, and closing pull requests
- Access control and grants — roles, access paths, granting and revoking access, users and groups