RepoSweeper Bridge

The Easiest Way to Move Repos
from GitHub to GitLab

Full commit history. All branches and tags. No command line, no manual cloning, no scripts.

Start Bridging Free Read the docs

Free. No credit card required. Connect GitHub and GitLab to get started.

GitHub
Bridge
GitLab

How it works

1

Connect GitHub

Sign in with GitHub — your repos load automatically. No manual tokens or setup.

2

Connect GitLab

Authorize your GitLab account via OAuth. Takes ten seconds.

3

Select your repos

Browse, search, and filter your GitHub repos. Repos already on GitLab are flagged so you don't duplicate work.

4

Click Bridge

Progress streams live. Each repo is cloned and pushed server-side — no software to install.

Everything moves with it

Full commit history
Every commit, author, date, and message — from day one. Nothing is trimmed or summarized.
All branches and tags
Not just main. Every branch and every release tag is copied exactly as-is.
Private repos supported
Private GitHub repos become private GitLab repos. Your code never touches RepoSweeper's storage.
Bulk migration
Select as many repos as you want and bridge them all at once. Progress streams live per repo.
Non-destructive
Bridge only creates on GitLab. Nothing on GitHub is touched, moved, or deleted.
No command line
The git clone and push happens on our servers. You just connect your accounts and click.

Common questions

Does it copy the full commit history?

Yes. Bridge uses git clone --mirror under the hood — the same method professionals use for migrations. Every commit, branch, tag, and ref is copied exactly. The result on GitLab is a byte-for-byte copy of the source.

Will it work with private repositories?

Yes. Private GitHub repos are mirrored as private GitLab repos automatically. Your OAuth tokens are used server-side for the operation and are never stored by RepoSweeper beyond your session.

What does NOT get copied?

Issues, pull requests, comments, wikis, and GitHub Actions configurations are GitHub-specific metadata and are not part of the git repository itself. Bridge copies the git history only. Collaborator permissions will need to be re-added on GitLab manually.

Do I need to install anything?

No. The clone and push happens on RepoSweeper's servers. You connect GitHub and GitLab via OAuth — that's it.

What if a repo already exists on GitLab?

Repos that are already detected in your GitLab account are shown with a 'mirrored' badge in the interface. You can still select them to force a re-mirror if you want to sync new commits.

Which providers are supported?

GitHub to GitLab is available today. GitHub to Gitea/Codeberg and GitLab to GitHub are coming soon.

Ready to migrate?

Connect GitHub and GitLab, select your repos, and Bridge handles the rest.

Start Bridging Free

No credit card. Part of RepoSweeper — free forever.