Documentation

Upstream documentation

Learn how to host repositories, review changes, run workflows, and work with the Upstream API.

Upstream is a Git forge for repositories, Change Requests, Issues, and automated workflows. It uses standard Git transport and keeps GitHub interoperability optional.

Use these docs to set up a repository, move existing work from GitHub, collaborate on changes, or connect an external tool.

Start with a repository

If you are new to Upstream, follow the quickstart. It covers account creation, repository setup, authentication, your first push, and your first Change Request.

Core concepts

  • A namespace is the stable public name for a person or organization.
  • A repository is the canonical home for Git data, settings, permissions, Issues, and Change Requests.
  • A Change Request is a versioned proposal. Reviews and checks attach to the exact version they evaluated.
  • Actions discovers GitHub Actions-style workflow files and records runs and jobs in Upstream, even when another provider executes them.
  • GitHub Sync is an import, migration, or fallback path. Upstream does not require GitHub to remain the source of truth.

Useful entry points

Upstream and Coline share one identity and repository backend. Using upstream.codes does not create a second account or copy of your repository.