Git access
Every list is a git repository — clone, edit list.json, push, branch.
Every SetFork list is backed by a real git repository served over smart HTTP. Anything that speaks git — the CLI, VS Code, CI — can work with lists directly.
Clone
Public lists clone anonymously:
git clone https://setfork.com/{owner}/{slug}.gitPrivate lists and drafts require an API token as the password (any username):
git clone https://anything:sf_YOUR_TOKEN@setfork.com/you/private-list.gitWhat's inside
The repository contains list.json — the canonical representation of the list
(title, description, tags, type, and blocks: steps, text, polls, quizzes and
more). Each published version is one commit,
so git log shows the version history and git diff shows what changed
between versions.
Push
Pushing requires a token with write scope; you must be the owner or a collaborator.
# edit list.json, then:
git commit -am "tighten the rollback steps"
git pushA push to the default branch is projected back into the platform: it creates a new version of the list, exactly as if you had edited and published in the UI.
Branches and suggestions
Push a branch to propose changes without touching the main line:
git switch -c sharper-steps
git push -u origin sharper-stepsA branch can be turned into a suggestion (SetFork's pull request) and merged by the owner — including conflict resolution when the list moved on since your branch diverged.
Rate limits
Git endpoints are rate-limited per client IP. CI that clones aggressively should cache the repository between runs.