Hoe migreer je van GitHub naar Codeberg
Stapsgewijze handleiding om je repositories te verplaatsen van GitHub naar Codeberg, het Duitse non-profit Git-hostingplatform. Gratis voor open source, EU-jurisdictie en gebouwd op Forgejo.
Vereisten
- GitHub-account met beheerderstoegang tot repositories
- Codeberg-account (gratis)
- SSH-sleutel lokaal geconfigureerd
- Vertrouwdheid met Git remote-beheer
Stappen
-
Maak een Codeberg-account aan
Registreer je op codeberg.org met e-mail of migreer direct vanuit GitHub via de OAuth-registratieoptie.
-
Beslis welke repo's je migreert
Open-sourceprojecten: volledig migreren. Persoonlijke projecten: migreren of mirroren. Commerciële propriëtaire code: overweeg in plaats daarvan zelf gehoste Forgejo op Hetzner.
-
Gebruik de GitHub-import van Codeberg
New Repository > Migration > GitHub. Authenticeert via OAuth en importeert issues, pull requests, wiki en labels.
-
Werk CI/CD-verwijzingen bij
Codeberg ondersteunt Woodpecker CI (vergelijkbaar met GitHub Actions). Vertaal je .github/workflows/ naar .woodpecker.yml of gebruik externe CI.
-
Stel SSH-sleutels en Git-remotes in
Voeg je SSH-sleutel toe aan Codeberg en werk lokale Git-remotes bij van github.com naar codeberg.org.
-
Werk README-badges en externe verwijzingen bij
Vervang GitHub-badges (build status, versie) door Codeberg-compatibele equivalenten.
-
Stel een GitHub-mirror in (optioneel)
Behoud GitHub als alleen-lezen mirror voor zichtbaarheid terwijl Codeberg de bron van waarheid wordt.
-
Archiveer of verwijder GitHub-repo's
Archiveer (soft delete) na 30 dagen vertrouwen, of verwijder de GitHub-kopie volledig.
Waarom migreren van GitHub naar Codeberg?
GitHub is het dominante Git-hostingplatform in 2026. Het is ook eigendom van Microsoft, gehost op Amerikaanse infrastructuur die onderworpen is aan de CLOUD Act, en wordt steeds meer een AI-trainingsdatabron of je nu opt-in hebt gedaan of niet. Voor Europese open-sourceprojecten, individuele ontwikkelaars en organisaties die hun code onder EU-jurisdictie willen, is Codeberg het geloofwaardige alternatief.
Codeberg is een Duitse non-profit Git-hostingdienst gebouwd op Forgejo (de community-onderhouden fork van Gitea). Gratis voor open-sourceprojecten, donatie-gefinancierd, in de EU gevestigd en expliciet opgebouwd rond de waarden van FOSS-duurzaamheid en digitale soevereiniteit. Het meest in de buurt komend van wat de open-sourcecommunity heeft als ‘GitHub maar dan Europees’.
Voor commerciële propriëtaire code is het natuurlijke alternatief zelf gehoste Forgejo op Hetzner — dezelfde software, gehost op je eigen infrastructuur, met totale kosten van ongeveer €5-30/maand ongeacht teamgrootte. Deze handleiding focust specifiek op Codeberg, maar de migratiestappen werken identiek voor zelf gehoste Forgejo.
Gedetailleerde migratiestappen
Stap 1: Maak een Codeberg-account aan
Bezoek codeberg.org en maak een account aan. Gratis, vereist alleen e-mail. Geen creditcard.
Voor organisaties die migreren: maak een organisatieaccount aan na individuele registratie — dit laat je toe om repositories onder de organisatie-namespace over te dragen of te forken.
Stap 2: Beslis wat je gaat migreren
Wees selectief. Migratie gaat sneller als je niet tien jaar aan dode repositories meeneemt.
Volledig migreren:
- Actieve open-sourceprojecten
- Persoonlijke projecten waarvan je het jammer zou vinden om ze te verliezen als GitHub vijandig wordt
- Repositories met gevoelige code of bedrijfslogica
Overweeg mirroring (alleen-lezen sync GitHub → Codeberg):
- Inactieve maar gerefereerde repo’s
- Publieke projecten waar GitHub-zichtbaarheid nog steeds telt
Overslaan / archiveren:
- Lang dode persoonlijke experimenten
- Repo’s die alleen bestaan als referenties of forks
Voor commerciële propriëtaire code: evalueer zelf gehoste Forgejo op Hetzner in plaats van Codeberg. Codeberg’s missie is open-source community hosting; commerciële repo’s worden geaccepteerd maar het karakter van het platform past beter bij FOSS-werk.
Stap 3: Gebruik de GitHub-import van Codeberg
Codeberg heeft een ingebouwde GitHub-import:
- Klik op + → New Migration
- Kies GitHub
- Authenticeer met GitHub OAuth (of gebruik een personal access token)
- Selecteer de repository om te importeren
- Kies wat te migreren:
- ✅ Wiki
- ✅ Issues
- ✅ Labels
- ✅ Pull Requests (als Issues, aangezien GitHub PR’s ↔ Codeberg PR’s niet 1:1 compatibel zijn)
- ✅ Releases
- ✅ Milestones
- Klik op Migrate Repository
Voor repositories met duizenden issues kan de migratie 30-60 minuten duren. Maak je geen zorgen om tijdens dit te werken — Codeberg verwerkt het asynchroon.
Stap 4: Werk CI/CD-verwijzingen bij
Codeberg gebruikt Woodpecker CI (analoog aan GitHub Actions). Vertaal je .github/workflows/*.yml naar .woodpecker.yml:
# Voorbeeld: .woodpecker.yml
steps:
build:
image: node:20
commands:
- npm install
- npm run build
- npm test
Voor complexe GitHub Actions-workflows kan de vertaling niet-triviaal zijn. Pragmatische alternatieven:
- Externe CI-providers die Codeberg ondersteunen: Drone Cloud, CircleCI (met hun generieke Git-integratie)
- Zelf gehoste CI op Hetzner: GitLab Runner gericht op Codeberg, of zelf gehost Woodpecker
Voor de meeste projecten kost de workflow-vertaling enkele uren en levert het eenvoudigere, beter leesbare CI-configuratie op.
Stap 5: Stel SSH-sleutels en Git-remotes in
Voeg je SSH-sleutel toe:
- Codeberg → User Settings → SSH/GPG Keys
- Plak je publieke sleutel
Werk lokale Git-remotes bij:
# Wijzig remote van GitHub naar Codeberg
git remote set-url origin git@codeberg.org:username/repo-name.git
# Of voeg Codeberg toe als extra remote (voor parallel-run periode)
git remote add codeberg git@codeberg.org:username/repo-name.git
git push codeberg --all
git push codeberg --tags
Stap 6: Werk README’s en badges bij
GitHub-specifieke badges en links moeten bijgewerkt worden:
- Build status-badges → gebruik Woodpecker CI-badges
- Versie-badges → Codeberg ondersteunt shields.io-patronen
- Downloadtellingen → Codeberg releases hebben vergelijkbare API’s
- Issue-links in docs → werk bij van
github.com/user/repo/issuesnaarcodeberg.org/user/repo/issues
Stap 7: Stel een GitHub-mirror in (optioneel)
Voor projecten waar GitHub-zichtbaarheid nog telt (open-sourceprojecten ontdekt via GitHub-zoekopdrachten), behoud GitHub als alleen-lezen mirror:
# Codeberg heeft een ingebouwde 'Push Mirror'-functie
# Repository Settings > Repository > Push Mirror
# Voeg github.com/user/repo toe met personal access token
Zo blijft Codeberg je bron van waarheid terwijl je GitHub-aanwezigheid behoudt.
Stap 8: Archiveer of verwijder GitHub-repo’s
Na 30 dagen vertrouwen:
- Archiveren (aanbevolen): Repository Settings → Archive this repository. Alleen-lezen, behoudt geschiedenis, signaleert ‘verhuisd’ aan bezoekers.
- Verwijderen (als je zeker bent): Settings → Danger Zone → Delete this repository.
Beide opties werken. Archiveren is de veiligere standaard — het bewaart het migratiespoor en geeft je een terugvaloptie als je iets ontdekt dat niet gemigreerd is.
Tips voor een soepele migratie
- Migreer eerst één repository als test. Kies een repo met lage inzet om de workflow te valideren voor je een bulkmigratie uitvoert.
- GitHub Actions-complexiteit is de belangrijkste migratiefrictie. Als je workflows zwaar gebruikmaken van third-party Actions, plan tijd om ze te vertalen of vervangen.
- Codeberg’s API is vergelijkbaar maar niet identiek aan die van GitHub. Aangepaste tooling die de GitHub API aanroept, moet bijgewerkt worden om Codeberg’s Forgejo-compatibele API te gebruiken.
- Codeberg’s resourcelimieten zijn ontworpen voor FOSS. Als je zeer grote repo’s hebt of uitgebreide CI draait, overweeg zelf gehoste Forgejo op Hetzner — dezelfde software, je eigen resources.
- Doneer. Codeberg is donatie-gefinancierd. Als je het langetermijn gebruikt, draag bij om het duurzaam te houden. €5-10/maand is betekenisvol voor het project.
- Voor organisaties die grote codebases migreren: overweeg zelf gehoste Forgejo als primair met Codeberg-mirror voor communityprojecten. Het beste van beide — volledige controle + zichtbaarheid waar het telt.
- Migreer niet alles tegelijk. De meeste bedrijven die succesvol naar Codeberg migreerden, deden het project-per-project over 3-6 maanden, met validatie voor elke stap voordat ze verder gingen.
Was dit nuttig?