Skip to content

v0.12.0 — GitHub or GitLab: pick the forge for org/repo spawns

Choose a tag to compare

@lacion lacion released this 15 Jul 20:12

Repo-mode spawns learn that not every repo lives on GitHub.

Added

  • GitHub / GitLab host choice for org/repo shorthand. The spawn dialog grows a host toggle (github default) whenever the repo field holds org/repo shorthand, and the destination hint now previews the exact origin that will be cloned — no more guessing which forge a shorthand resolves to. GitLab nested subgroups (group/subgroup/repo) are supported: a 3+-segment path forces the gitlab host (GitHub has no such shape) instead of failing with a misleading "relative path" error. API: POST /api/spawn accepts repo_host (github | gitlab; absent means github, fully backward compatible).

Fixed

  • SSH-cloned checkouts are reused by https/shorthand spawns. Origin matching is now transport-insensitive: git@gitlab.com:org/repo.git, ssh://git@gitlab.com/org/repo.git, and https://gitlab.com/org/repo.git count as the same repository, so a repo-mode spawn reuses an existing checkout instead of refusing with "exists and is not …" or cloning a duplicate. Deliberately conservative: an ssh:// origin with an explicit port never normalizes (a nonstandard port can front a different server), and a missed match degrades to the old behaviour — never to reusing the wrong tree.
  • Nameless shorthand is refused. org/.git-style input used to resolve to an empty repository name and collapse the clone destination onto the repos root itself; it now fails up front with "shorthand must end in a repository name".

Full changelog: https://github.com/lacion/fleet-deck/blob/main/CHANGELOG.md#0120---2026-07-15