← Getting started

Import repositories

Migrate from GitHub, GitLab, Bitbucket, or any git host.

What gets imported

gittan imports the git repository: all branches, tags, and commit history. Issues, pull requests, wikis, and CI configuration are not migrated — gittan does not have issues or PRs, and pipeline configuration is auto-detected or defined in .gittan.yaml.

Supported platforms

PlatformURL formatToken type
GitHubhttps://github.com/owner/repoPersonal access token (repo scope)
GitLabhttps://gitlab.com/owner/repoPersonal access token (read_repository scope)
Bitbuckethttps://bitbucket.org/owner/repoApp password (Repositories: Read)
Giteahttps://your-instance/owner/repoAccess token with repo read
Self-hostedAny HTTPS git URLSpecify --service explicitly

Import via the web UI

Go to your team settings and select Import. Paste one or more repository URLs (one per line), provide an access token for the source platform, and click Import.

The platform is auto-detected from the URL. For self-hosted instances (e.g. your company's GitLab), select the platform manually.

Import via the CLI

# Import from GitHub
gittan repos import https://github.com/owner/repo --team <team-id> --token <pat>

# Import from GitLab
gittan repos import https://gitlab.com/owner/repo --team <team-id> --token <pat>

# Import from Bitbucket
gittan repos import https://bitbucket.org/owner/repo --team <team-id> --token <pat>

# Self-hosted GitLab (explicit service)
gittan repos import https://gitlab.company.com/team/repo --team <team-id> --token <pat> --service gitlab

# Overwrite existing repo
gittan repos import https://github.com/owner/repo --team <team-id> --token <pat> --update

After import

Once imported, the repository is a normal gittan repo owned by the team you selected. Push to it like any other repo — pipeline feedback will stream to your terminal on the first push.

The import is a one-time clone, not a mirror. Changes on the source platform after import are not synced.