GitLab shops

Bring stacked diffs to GitLab and self-hosted GitLab

Most stacked-diff tools are GitHub-only. stkd treats GitLab merge requests — including self-hosted instances — as a first-class peer.

The problem

Stacked-diff tooling has historically been GitHub-only, which leaves every GitLab team — and every enterprise on self-hosted GitLab — stuck rebasing branches by hand.

Merge requests as first-class citizens

gt submit --stack opens a merge request per branch on GitLab, cross-linked with the same stacked-navigation comment you'd get on GitHub. Draft MRs, approval rules, and pipelines all work the way your team already expects.

Self-hosted, not just gitlab.com

Point stkd at your instance once with --gitlab-host=gitlab.example.com and every command targets it. There's no SaaS dependency and no data leaving your network — the CLI talks only to your GitLab API and your git remote.

One workflow across providers

Teams that span GitHub and GitLab use the identical gt commands on both. The stack metadata and restack behavior are provider-agnostic; only the submit step knows which API to call.

The commands

  • gt repo init --gitlab-host=gitlab.example.com target self-hosted GitLab
  • gt submit --stack open linked merge requests
  • gt sync restack after an MR merges

New to these? Follow the quickstart or read how stkd works.

Ready to stack your next change?

Install stkd in under a minute. Apache-2.0, single binary, every major platform.