Import from GitHub

Move repositories, issues, and pull request history from GitHub with the one-shot import wizard.

The import wizard moves a GitHub repository onto Plain in one pass: git history, issues, pull requests, reviews, comments, and the wiki. It is designed so that the day after the import, nothing feels missing.

What gets imported

  • Git history. The full repository, every branch and tag, fetched server to server.
  • Issues and pull requests, with their comments and review threads. Merged and closed PRs arrive as frozen historical records with their diffs preserved.
  • Reviews, mapped onto Plain's review model.
  • The wiki, converted into documents.
  • Timestamps and authorship. Events are backdated to when they actually happened. Authors are mapped to Plain members where possible; everyone else is credited by name in plain text, so attribution survives even for people who never join.

Before you start

You need a GitHub personal access token that can read the repository and its metadata. The token is encrypted at rest the moment you submit it and wiped as soon as the import succeeds. It is never written to logs.

Run the wizard

Open Import from GitHub from the command palette or the sidebar, paste the repository and token, and confirm. Progress streams live: you can watch issues, PRs, and comments land item by item.

Imports are resumable. If the job is interrupted, run it again and it continues where it stopped; items that already landed are not duplicated. Individual items that fail are tracked so you can see exactly what needs attention rather than guessing.

How numbers and authors map

Plain numbers issues and PRs per organisation, so your GitHub numbers are remapped to fresh ones. Every #N reference and GitHub URL inside imported text is rewritten to point at the right Plain item, so cross-references keep working after the move.

After the import

  • Point your local checkout at Plain and push: see Pushing code.
  • Invite the team so author mapping picks them up.
  • Set up CI; Actions workflows do not transfer, and you will not miss them.
  • Archive the GitHub repository so new work lands in one place.