gittan.
How it worksPricingDocs Sign in

Why gittan

How we think

For your role

Dev teamsPlatform engineersEngineering leaders

Getting started

OverviewCreate your orgFirst pushTeams & reposYour first pipelineImport reposPublic repos & packagesDevice authorizationFrom GitHub Actions

Pipelines

OverviewConfigurationPoliciesShared stepsBase imagesImage pinningDeploy hooksPipeline previewDeploy feedbackExamples

Teams & metrics

OverviewTeam metricsCode reviewChangelogDependenciesNotifications

Security

OverviewPeopleMachines & tokensPipeline identitySupply chainAudit logSecurity findingsChange managementGroup sync

Reference

CLIPipeline YAMLPolicy YAML

Pipelines

Every push runs a pipeline. If it passes, the push lands. If it fails, it is rejected. No separate CI system — pipeline output streams to your terminal during git push.

Pipeline configuration

How gittan detects your project type and how to customize with .gittan.yaml.

Policies

Org-level rules that inject mandatory steps into every pipeline. Security scanning, compliance checks, deploy gates.

Shared steps

Reusable step definitions managed in your org-pipelines config repo.

Base images

Pre-built, pre-pulled images for every language and platform. Use any image — these are just faster.

Image pinning

Every image has a digest. No :latest. No tag poisoning. No non-reproducible builds.

Deploy hooks

HMAC-signed webhooks that notify your deploy system when a new image is published.

Pipeline preview

See exactly what will run before you push — the full resolved pipeline with sources.

Deploy feedback

Let your deploy system report back when a release lands, closing the loop from commit to production.

Examples

Real .gittan.yaml patterns for Node APIs, libraries, multi-image services, and more.