I en sammenligning af gitea vs forgejo vs onedev ser du på tre værktøjer, der besvarer to forskellige spørgsmål. Gitea og Forgejo er git-servere, der har projektstyring hægtet på. OneDev er en projektstyrings- og CI-platform, der tilfældigvis hoster git rigtig godt. Så beslutningen er ikke "hvilken af de tre er bedst." Den er "vil jeg have en lille git-server, eller en alt-i-én-platform, og har jeg råd til den RAM, alt-i-én-løsningen koster?"
Den sidste del er hvor det spidser til. OneDev kan mere ud af boksen, og nodatools.com's tests målte, at den lå på tomgang med omkring 3x hukommelsesforbruget af en bar Forgejo-installation, hvilket på en lille VPS kan fordoble din månedlige regning. Det bytte er hele sagen. (Og nej, GitLab er ikke med i denne sammenligning. Hvis du var ude efter GitLabs fodaftryk, ville du ikke læse om disse tre.)
Jeg har kørt alle tre. Nedenfor er det, der faktisk betyder noget, når du vælger en til et team: forskellene i governance og licens, der adskiller Gitea fra Forgejo, de funktioner, der berettiger OneDevs eksistens, de testede RAM-tal, og et ligetil "vælg denne, hvis…" for hver.
TL;DR
- Vil du have en letvægts git-server med Actions-lignende CI? Gitea eller Forgejo. Vælg Gitea, hvis tættere GitHub Actions-kompatibilitet betyder noget; vælg Forgejo, hvis GitHub-lignende workflow-syntaks med nogle migreringsjusteringer er acceptabelt.
- Går du op i non-profit-governance eller en copyleft-licens? Forgejo. Det er den community-styrede fork, og det er mit standardvalg for de fleste teams.
- Vil du have MIT-licensen, det største forge-community eller et betalt Enterprise-niveau med SLA/SSO? Gitea.
- Vil du have indbygget projektstyring, medfølgende CI og kodeintelligens i én installation, og har du RAM til overs? OneDev. Bare vid, at det kræver ~4 GB minimum, hvor Forgejo er tilfreds med 1 GB.
Hurtig konklusion: For de fleste teams er Forgejo det rigtige lette standardvalg: samme kerne som Gitea, renere governance og Forgejo Actions med GitHub-lignende workflow-syntaks. Grib kun fat i OneDev, når du reelt ønsker den samlede PM-plus-CI-oplevelse i én kasse, og du ikke migrerer en bunke eksisterende GitHub Actions-workflows.
De to spørgsmål, disse tre værktøjer besvarer

OneDev kører sin CI build-dæmon inde i OneDev-processen, så der er ingen separat runner at udrulle. Gitea og Forgejo gør det modsatte: git-serveren er én ting, og du udruller en CI runner som en separat proces ved siden af den. Den ene arkitektoniske kendsgerning er tegnet på, hvordan hvert værktøj opfatter sig selv.
Gitea og Forgejo er git-first. Repositories, pull requests og kodegennemgang er kernen; issues og kanban er nyttige tilføjelser; CI er noget, du kobler på. Det hele er bygget op omkring at hoste git og holde sig ude af vejen for dig. Det er derfor, de er små, hurtige og billige at drive.
OneDev er bygget den anden vej rundt. Det er en projektstyrings- og CI/CD-platform, hvor git-hosting er en central komponent, men ikke det organiserende princip. Kanban-tavlerne er automatiserede, CI'en er indlejret, kodeintelligens er indbygget, og det forventer at være stedet, hvor dit team lever, ikke bare stedet, hvor din kode ligger. Det er et reelt anderledes produkt, hvilket er grunden til, at det at sammenligne det med Gitea på "hvem hoster git bedst" misser pointen. De hoster git nogenlunde lige godt. OneDev ønsker bare at gøre meget mere, og det opkræver dig i ressourcer for privilegiet.
Alt efterfølgende afspejler denne opdeling. Valget mellem Gitea og Forgejo er en underbeslutning inden for grenen "lightweight forge". Spørgsmålet "er OneDev det værd" er den anden gren helt for sig selv.
Gitea vs Forgejo: Beslutningen mellem to næsten-tvillinger

Begge ligger omkring 180–350 MB RAM, begge deler den samme kodebase frem til forgreningspunktet, og begge udfører kerne-git-hosting på samme måde. Når det gælder repositories, pull requests, kodegennemgang, issues og Actions-lignende CI, vil du have svært ved at finde en reel forskel i den daglige brug, medmindre du migrerer eksisterende GitHub Actions-workflows. Så lad os være tydelige med det samme: dette er ikke en featurekamp. Forskellen mellem onedev og gitea er stor; forskellen mellem gitea og forgejo handler om, hvem der kontrollerer projektet, og hvilken licens det udgives under.
Her er den baggrund, du faktisk har brug for. I oktober 2022 blev Gitea-domænet og varemærket centrum for en tvist om governance, og Forgejo blev skabt som svar på det. Forgejo hører nu hjemme under Codeberg e.V., en non-profit-organisation i Tyskland, og udgives under GPL-3.0. Gitea forbliver MIT-licenseret og har en gratis open source-udgave til selvhosting, mens CommitGo sælger Gitea Enterprise ved siden af. Forgejo beskriver den ordning som Open Core; Gitea/CommitGo bestrider den betegnelse og siger, at selve det open source Gitea-projekt ikke indeholder proprietær kode. For læserne er den praktiske forskel enklere end politikken: Forgejo optimerer for nonprofit, copyleft og fuldt fri governance; Gitea tilbyder den tilladende MIT-kerne plus en leverandørstøttet Enterprise-vej.
Tre ting følger af det, og hver af dem er relevant for din beslutning:
- Licens. GPL-3.0 copyleft (Forgejo) betyder, at hvis du ændrer Forgejo og distribuerer den ændrede version, skal du dele dine ændringer under GPL. MIT (Gitea) kræver ikke det. For de fleste teams, der kører en uændret instans internt, kommer det aldrig op. Men hvis du bygger oven på forgen og udgiver det, betyder det noget.
- Sikkerhedsoplysninger. Forgejo giver alle besked om sikkerhedsråd gennem offentlige kanaler. Gitea forbeholder forhåndsvarsler om sikkerhed til betalende Enterprise-kunder, hvilket betyder, at selvhostede administratorer på den gratis version kan være eksponeret for en kendt sårbarhed længere end de betalende kunder er. Hvis du kører den gratis version, er den asymmetri værd at kende til.
- Der findes et betalt niveau på den ene side. Gitea har en kommerciel Enterprise Edition ($9.50–$19/bruger/måned), der tilføjer SSO, audit-logs, prioriteret support og en SLA. Forgejo har intet betalt niveau, alle funktioner er i den gratis GPL-build.
Hvis du er på Gitea i dag, og dette skubber dig mod Forgejo, er den gode nyhed, at der findes en understøttet migreringsvej (med et versionsskel ved Gitea 1.22, som er værd at forstå, før du går i gang). Jeg har skrevet det op separat, se den fulde migreringsgennemgang for gennemgangen version for version. Hvis du kommer fra GitHub og endnu ikke har valgt en forge, er det en separat beslutning med sine egne kompromisser, som er værd at tage stilling til på egne præmisser.
Opsummering: Når det gælder ren git-hosting, er Gitea og Forgejo ligeværdige. Vælg Forgejo, hvis du vil have nonprofit-ejerskab, copyleft og offentlige sikkerhedsoplysninger. Vælg Gitea, hvis du vil have MIT-licensen, det større community eller det kommercielle Enterprise-niveau.
Hvor OneDev virkelig adskiller sig
Kør OneDev (16.0.1 i skrivende stund) i en dag, og det første, du lægger mærke til, er, at du aldrig har sat en CI-runner op. Build-dæmonen lever inde i OneDev-serveren, så CI virker, i det øjeblik platformen er oppe. Du kan bygge en pipeline i et GUI uden at skrive en eneste linje YAML, fejlsøge et job gennem en webterminal og teste en build mod ikke-committede lokale ændringer, før du overhovedet pusher. Det er en reel operationel forenkling i forhold til den "installér serveren, installér og registrér derefter en separat runner"-dans, som Gitea og Forgejo kræver.
Hagen, og det er en stor en for eksisterende teams, er, at OneDev bruger sin egen YAML-dialekt. Den er ikke GitHub Actions-kompatibel. Ethvert workflow, du har skrevet til GitHub, Gitea eller Forgejo, skal skrives om for at kunne køre på OneDev. Hvis du har en bunke .github/workflows-filer, du er afhængig af, er det en reel migreringsomkostning, ikke en fodnote. Gitea og Forgejo arver begge GitHub Actions-økosystemet, men de arver det ikke på samme måde. Gitea Actions er designet som en drop-in for GitHub Actions, så de fleste workflows overføres uden ændringer. Forgejos runner er kompatibel i praksis, men har dokumenterede huller: en manglende permissions-underdel, continue-on-error der ignoreres, anderledes OIDC-syntaks. Tjek de ting, før du antager fuld portabilitet.
Den anden ting, OneDev gør, som de mindre forges simpelthen ikke gør: kodeintelligens i web-UI'et. Symbolsøgning, go-to-definition og find-references virker på tværs af en række sprog (den officielle liste inkluderer Java, JavaScript, C, C++, C#, Go, PHP og Python) uden at klone repoet lokalt. Gitea og Forgejo har intet tilsvarende indbygget, så du må ty til et eksternt værktøj. Hvis dit team laver meget kodegennemgang i browseren, er det ægte rart.
Rund det af med fuldautomatisk kanban (regelbaseret opgaveflytning, brugerdefinerede tilstande og felter, overgangsregler), en service desk, der omdanner indgående e-mail til issues uden at afsenderen behøver en konto, og fortrolige issues inden i offentlige projekter, så har du billedet: OneDev forsøger at være din issue tracker, dit CI-system, din kodebrowser og dit projektboard på samme tid.
En afklaring om pakkeregistre er værd at nævne. OneDev har et indbygget register; den del er klar. Dets pakke-tutorial nævner Docker, npm, NuGet, Maven, PyPI og RubyGems, mens den aktuelle produkttekst også nævner Helm. Gitea og Forgejo dækker fortsat et langt bredere sæt af pakkeformater, herunder Alpine, Arch, Cargo, Composer, Conan, Conda, Debian, Go, Helm, Maven, npm, NuGet, PyPI, RPM, RubyGems, Swift, Vagrant med mere. Hvis dit team er afhængigt af pakkeformater uden for OneDevs snævrere registersæt, er Gitea eller Forgejo det sikrere valg.
Opsummering: OneDev giver dig indbygget CI, kodeintelligens og en fuld PM-pakke i én installation. Du betaler for det ved at skulle omskrive eventuelle GitHub Actions-workflows, acceptere et mindre økosystem og (som det næste afsnit dækker) fodre det med meget mere RAM.
Ressourceomkostningen: Hvad hver enkelt faktisk kræver

Det tal, der afgør hele denne sammenligning for mange teams, kommer fra nodatools.com's tests: OneDev lå på tomgang på omkring 600 MB RAM, hvor Forgejo lå på omkring 180 MB. Det er mere end 3x, og det skalerer op under belastning. Her er deres testede tal fra nodatools.com's measured comparison, kør på en frisk VPS:
| Værktøj | Nuværende version | RAM i hvile (testet) | Aktiv RAM under belastning (testet) | Officielt minimum |
|---|---|---|---|---|
| Forgejo | v15.0.3 LTS | ~180 MB | ~320 MB | 512 MB |
| Gitea | 1.26.4 | ~200 MB | ~350 MB | 512 MB |
| OneDev | 16.0.1 | ~600 MB | ~950 MB | 2 GB |
Hvorfor forskellen? OneDev er hovedsagelig skrevet i Java, så JVM'en bærer en heap-overhead, som de Go-baserede Gitea og Forgejo simpelthen ikke har. Oven i det indekserer OneDev kode til sine intelligensfunktioner, og den indledende indeksering er hukommelseshungrende. Da jeg selv satte den op første gang, var opstartsspidsen den mest skræmmende del, og det er ikke det stabile niveau.
Pro-tip: Bliv ikke bekymret over OneDevs hukommelsesforbrug ved opstart. Det kan spidse yderligere op lige efter boot, mens JVM varmer op, og det indledende kodeindeks bygges, og falder derefter tilbage mod det inaktive niveau, når tingene stabiliserer sig. Når det er sagt, skal du planlægge efter det realistiske arbejdstal, ikke det inaktive. Med CI, der aktivt kører jobs, bør du budgettere med 1–2 GB konsekvent. Det officielle minimum på 2 GB findes af en grund.
Med hensyn til dimensionering oversætter det sig direkte til VPS-niveauer:
- Forgejo eller Gitea, basisinstallation, ingen CI runner på maskinen: 1 GB RAM / 1 vCPU is comfortable.
- Forgejo eller Gitea med en CI runner på samme server: opgradér til 4 GB RAM / 2 vCPU, så runneren har plads.
- OneDev, basisinstallation: 4 GB RAM is the practical floor. Go to 8 GB if code indexing is heavy or CI is busy.
Så omkostningsforskellen er ikke lille. En strippet git-server, der trives på en 1 GB-boks, versus en OneDev-instans, der vil have 4 GB, er groft sagt en fordobling af din månedlige VPS-regning. For en solo-udvikler eller et lille team er det forskellen mellem "stort set gratis at drive" og en post på budgettet, man lægger mærke til. For et større team, der dagligt vil læne sig op ad det indbyggede CI og PM, kan det sagtens være det værd. Men det er et reelt bytte: OneDevs overhead er JVM'en, og den omkostning køber dig det, JVM'en driver.
Gitea, Forgejo, og OneDev er alle one-click-deploys i Cloudzy's marketplace, så når du har dimensioneret den, tager det et par minutter at sætte en forge op i stedet for en eftermiddag med Docker-rod. Hvis du kører en CI runner eller OneDevs kodeindeksering, ligger den ekstra plads på en Linux VPS med root-adgang, så du selv kan justere JVM-heapen og runner-samtidigheden.
En Cloudzy-specifik bemærkning: Marketplace-appkortene starter i øjeblikket Gitea, Forgejo og OneDev med 2 GB RAM. Anbefalingen på 1 GB ovenfor gælder for slanke manuelle installationer uden en lokal CI runner. Hvis du udruller gennem Cloudzy Marketplace, skal du følge appkortets minimum, så OS'et, databasen, pakkeopdateringer og baggrundstjenester har luft at boltre sig i.
Hvilken skal du vælge?
Du har set tabellen og kompromisserne, så her er min lige ud af landevejen-vurdering for hver læserprofil, baseret på at have kørt alle tre.
Vælg Forgejo hvis du vil have en letvægts, community-styret forge med Actions-lignende CI, og du kan leve med små workflow-forskelle fra GitHub Actions. Dette er min standardanbefaling til de fleste teams. Du får den samme kerne-git-hosting som Gitea, et renere nonprofit-ejerskab, offentlige sikkerhedsoplysninger, en copyleft-licens og det letteste RAM-fodaftryk af de tre. Har du ikke en specifik grund til at vælge en af de andre, så vælg denne.
Vælg Gitea, hvis du specifikt vil have MIT-licensen (mere tilladende end Forgejos GPL-3.0), det største forge-community og økosystem, eller et kommercielt Enterprise-niveau med SSO, audit logs og en SLA. På ren git-hosting er det uafgjort med Forgejo, så du vælger ud fra licens- og ejerskabspræference, plus den betalte support-mulighed, hvis din organisation har brug for en leverandør at ringe til.
Vælg OneDev, hvis du vil have indbygget projektstyring, medfølgende CI og kodeintelligens i én installation, du starter helt forfra (ingen eksisterende GitHub Actions-workflows, der skal migreres), og du har RAM-budgettet til en boks på 4 GB eller mere. Forgejo vs. OneDev-beslutningen handler i virkeligheden om dette: køber du en git-server eller en platform? Hvis svaret er "platform, og jeg vil ikke selv skulle sætte CI på", så er OneDevs overhead det værd.
Et beslutningselement, der er let at overse: der findes ingen migreringsvej mellem Gitea/Forgejo-familien og OneDev. Forskellig datamodel, forskelligt CI-format, forskelligt skema. Hvis du starter på Forgejo og senere beslutter, at du vil have OneDev (eller omvendt), ser du på et API-baseret skifte repo for repo, som mister din CI-historik og dine projektstyringsdata. Så hvis OneDevs alt-i-én-tilgang overhovedet tiltaler dig, er det meget billigere at starte der end at skifte til det senere. Mellem Gitea og Forgejo findes migrering derimod (det er migreringsvejen dækket ovenfor), men at krydse linjen fra letvægts-forge til OneDev er en énvejs, tabsgivende rejse. Tag højde for det i beslutningen nu, ikke om atten måneder.
Ofte stillede spørgsmål
Er Gitea stadig open source?
Ja. Giteas kerne er MIT-licenseret og gratis at selvhoste med ubegrænsede brugere og repositories. Det praktiske forbehold handler om governance, ikke om kildekodens tilgængelighed: Gitea er virksomhedsstyret og har et leverandørstøttet Enterprise-tilbud gennem CommitGo, mens Forgejo er den community-styrede, GPL-licenserede fork under Codeberg e.V. Forgejo beskriver Giteas kommercielle arrangement som Open Core; Gitea/CommitGo bestrider den betegnelse og siger, at selve open source-projektet ikke indeholder proprietær kode. Så Gitea er stadig open source, men det er ikke community-styret på samme måde, som Forgejo er.
Er Forgejo bedre end Gitea?
Når det gælder ren git-hosting, er de næsten identiske: Forgejo blev forgrenet fra Gitea og deler den samme base. Forgejo adskiller sig på governance (non-profit Codeberg e.V.), licens (GPL-3.0 copyleft versus Giteas MIT) og sikkerhedsoffentliggørelser (offentlige for alle, versus Giteas politik om Enterprise-kunder først). "Bedre" afhænger af, om de ting betyder noget for dig; på features alene er det uafgjort.
Hvor meget RAM kræver OneDev?
OneDevs officielle minimum er 2 GB RAM. I nodatools.coms test lå den i hvile omkring 600 MB og ramte cirka 950 MB under belastning. Opstart kan ligge højere, mens JVM'en varmer op og indekseringen fuldføres, men med CI aktivt kørende bør du budgettere med 1–2 GB konsekvent. Til sammenligning satte den samme test Forgejo og Gitea til ~180–200 MB i hvile.
Kan jeg migrere fra Gitea til OneDev, eller fra OneDev til Forgejo?
Der findes ingen direkte migreringsvej mellem Gitea/Forgejo-familien og OneDev. De bruger forskellige datamodeller, CI-formater og skemaer, så et skift ville kræve en API-baseret migrering repo for repo, som mister CI- og projektstyringshistorik. Migrering mellem Gitea og Forgejo findes derimod (se vores guide til migrering fra Gitea til Forgejo), fordi de deler en oprindelse.
Understøtter OneDev GitHub Actions?
Nej. OneDev bruger sin egen YAML-dialekt plus en GUI pipeline-editor, så workflows skrevet til GitHub, Gitea eller Forgejo skal skrives om for at kunne køre på det. Gitea Actions er designet som en drop-in-erstatning, så de fleste eksisterende workflows kører uden ændringer. Forgejos runner er kompatibel i praksis, men er ikke designet til at spejle GitHub Actions præcist; tjek den officielle Forgejo-dokumentation for dokumenterede inkompatibiliteter, før du antager fuld portabilitet.