developer tools

Hoe migreer je van GitHub naar Codeberg

GitHub Codeberg
Moeilijkheid: Makkelijk Geschatte tijd: 1-2 uur per repository (grotendeels geautomatiseerd)

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

  1. Maak een Codeberg-account aan

    Registreer je op codeberg.org met e-mail of migreer direct vanuit GitHub via de OAuth-registratieoptie.

  2. 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.

  3. Gebruik de GitHub-import van Codeberg

    New Repository > Migration > GitHub. Authenticeert via OAuth en importeert issues, pull requests, wiki en labels.

  4. Werk CI/CD-verwijzingen bij

    Codeberg ondersteunt Woodpecker CI (vergelijkbaar met GitHub Actions). Vertaal je .github/workflows/ naar .woodpecker.yml of gebruik externe CI.

  5. 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.

  6. Werk README-badges en externe verwijzingen bij

    Vervang GitHub-badges (build status, versie) door Codeberg-compatibele equivalenten.

  7. Stel een GitHub-mirror in (optioneel)

    Behoud GitHub als alleen-lezen mirror voor zichtbaarheid terwijl Codeberg de bron van waarheid wordt.

  8. 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:

  1. Klik op + → New Migration
  2. Kies GitHub
  3. Authenticeer met GitHub OAuth (of gebruik een personal access token)
  4. Selecteer de repository om te importeren
  5. 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
  6. 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:

  1. Codeberg → User Settings → SSH/GPG Keys
  2. 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/issues naar codeberg.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?