Infrastructure

Managed Git Server

One operated source-control offering with GitLab, Gerrit, Gitea, and Forgejo platform options


Managed Git Server is a facilitated local-development and delivery-infrastructure offer, not four unrelated service propositions. Assistance helps teams choose and operate the right git platform option — GitLab, Gerrit, Gitea, or Forgejo — after confirming workflow fit, hosting location, identity model, runner requirements, backup expectations, support coverage, and evidence needs.

The selected option can run in a customer account, an Assistance-managed environment, an approved partner environment, dedicated physical infrastructure, Kubernetes, Local Private Cloud, or a hybrid model. Claims about data residency, compliance, recovery objectives, and support hours are made only for the assessed environment and must be backed by provider evidence, contracts, runbooks, and restore or monitoring proof.

Option comparison#

OptionChoose it whenReview modelCI/CD and runnersOperating weight
GitLabThe team wants source control, merge requests, CI/CD, packages, registry, security workflows, and policy in one UIMerge requests with approvals, protected branches, code owners, status checks, and policiesBuilt-in GitLab CI/CD through registered GitLab Runners; external CI can integrate through APIs and webhooksBroadest platform surface; requires explicit ownership for runners, storage, upgrades, licenses, backups
GerritCode review governance, patch-set review, verification labels, and controlled submit paths are the core requirementChange-based review with patch sets, labels, submit requirements, and explicit verificationExternal CI such as Jenkins, Zuul, Tekton, or custom adapters reports votes or labels back to Gerrit changesSpecialized review platform with plugin, permission, replication, and workflow-onboarding needs
GiteaA lightweight private forge is enough for repositories, issues, pull requests, packages, and simple Actions flowsPull requests, branches, reviews, issues, organizations, teams, and branch protectionsGitea Actions-compatible runners when enabled, or external CI through webhooks, tokens, and status reportingLower platform overhead; lighter enterprise governance and security workflow surface than GitLab
ForgejoThe team wants a lightweight Gitea-family forge with community-governed project directionGitea-like pull requests, repository collaboration, issues, teams, and branch protectionsForgejo Actions-compatible runners when enabled, or external CI through webhooks, tokens, and status reportingLightweight operations with release, governance, and compatibility choices reviewed during upgrades

Selection criteria#

Requirement or constraintStarting optionWhat Assistance validates before recommending it
Integrated DevSecOps platformGitLabEdition and license needs, runner topology, storage, registry/packages scope, security features, and admin capacity
Strict review gates before code landsGerritPatch-set workflow readiness, submit requirements, verification labels, plugin set, and developer onboarding
Simple self-hosted repositories and pull requestsGitea or ForgejoRepository scale, identity integration, backup coverage, Actions compatibility, and governance preference
Community-governed lightweight forgeForgejoCompatibility expectations, release policy, governance requirements, and migration path from Gitea-family systems
Existing GitLab estate needs an operatorGitLabCurrent topology, backup posture, runner health, upgrade path, license ownership, and migration risk
Existing Gerrit review cultureGerritCurrent version, plugins, permissions, CI adapters, replication, and project configuration
Cost-sensitive internal toolingGitea, Forgejo, or a small assessed GitLab/GerritRuntime footprint, storage growth, support level, runner isolation, and whether lighter governance is acceptable
Regulated or regional hosting requirementAny option after evidence reviewRuntime, backups, logs, support access, subprocessors, contracts, provider attestations, and customer controls

Hosting and ownership boundaries#

Deployment modelSuitable optionsBoundary to document
Customer cloud accountGitLab, Gerrit, Gitea, ForgejoCustomer owns the account, billing, provider relationship, and policy approval; Assistance operates the scoped platform components.
Assistance-managed environmentGitLab, Gerrit, Gitea, ForgejoAssistance owns more of the runtime surface for the engagement; region, backups, subprocessors, support access, and evidence are agreed.
Approved partner-hosted environmentUsually GitLab; possible others by assessmentPartner claims must be verified against current contracts and evidence; Assistance coordinates the operated boundary where scoped.
Assistance-operated physical serversGitea, Forgejo, and smaller assessed GitLab/Gerrit environmentsUseful for development, CI, internal repositories, and predictable workloads; not a blanket internet-scale production promise.
Kubernetes or existing platform clusterGitLab, Gerrit, Gitea, ForgejoCustomer platform standards for storage, ingress, secrets, monitoring, GitOps, and cluster ownership must be clear.
HybridAny optionCommon when source control, runners, staging, and production deployments have different risk, cost, or network-control requirements.

CI/CD and runner implications#

Managed Git Server decisions affect runner security as much as repository hosting.

OptionRunner implicationTypical Assistance work
GitLabGitLab jobs target group, project, protected, or tagged runners; caches, artifacts, environments, and deployment runners matterRunner scope and tags, protected-runner rules, cache/artifact storage, queue monitoring, privileged-job separation
GerritGerrit emits events and expects external systems to verify changes; worker capacity is owned outside GerritEvent adapter ownership, verification labels, submit requirements, Jenkins/Zuul/Tekton integration, worker pool monitoring
GiteaGitea Actions-style workflows use configured runners and labels where enabled; external CI may still be simplerRunner registration token handling, label contracts, private-network profiles, workflow smoke tests, compatibility findings
ForgejoForgejo Actions-style workflows use configured runners and labels where enabled; behavior depends on release and runner versionRunner registration token handling, trust-level labels, private-network profiles, workflow smoke tests, compatibility notes

Use Managed runners overview when builds need stronger isolation, predictable capacity, private-network access, local-development parity, or separation between general CI and production deployment jobs. Use Managed Mattermost when delivery, incident, and support communication should share the same customer-controlled local-development boundary.

Security, compliance, and regional hosting language#

Assistance can help collect and organize evidence for security, procurement, privacy, and compliance reviews. Assistance does not make blanket claims that every managed git server is EU-resident, GDPR-compliant, certified, or available 24/7.

For any platform option, confirm:

  • where the application, repositories, database, packages, artifacts, logs, and backups are stored;
  • who owns the cloud account, partner contract, DNS, email, monitoring, object storage, and runner infrastructure;
  • which providers and subprocessors can access the environment and under what approval path;
  • which certificates, audit summaries, DPAs, TOMs, backup reports, restore tests, and runbooks are current and in scope;
  • who owns user approvals, access reviews, data classification, repository retention, release decisions, and legal conclusions.

Prefer precise language such as "deployed in the agreed EU region when scoped and evidenced". Avoid unsupported claims such as "all customer data stays in the EU" unless runtime, backups, logs, support access, runner paths, and subprocessors are contractually confirmed.

Assistance recommendation process#

1. Workflow and evidence assessment#

We review repository count and size, users and groups, review expectations, branch model, CI/CD requirements, runner trust levels, identity provider, migration source, data-location drivers, compliance constraints, backup expectations, support hours, and current platform pain points.

2. Platform recommendation#

Assistance recommends GitLab, Gerrit, Gitea, Forgejo, or a staged migration path. The recommendation includes hosting model, responsibility split, upgrade policy, backup and restore approach, runner integration, monitoring signals, access boundaries, and support tier.

3. Build, migrate, or take over#

We provision the selected option, migrate repositories when scoped, configure identity, establish backup and monitoring baselines, connect runners or external CI, validate representative workflows, and document the operating boundary.

4. Operate and improve#

After go-live, Assistance operates the agreed platform scope, reviews incidents and capacity, schedules maintenance, refreshes evidence, and adjusts runner, access, or monitoring patterns as usage changes.

Option runbooks#

Getting started#

Frequently asked questions#

Are GitLab, Gerrit, Gitea, and Forgejo separate Assistance services? No. They are selectable platform options under the managed git server offer. The option pages are runbooks that explain how each platform is operated when selected.

Is GitLab always the safest choice because it has the most features? No. GitLab is powerful, but its feature surface increases operational and governance responsibility. Smaller teams may be better served by Gitea or Forgejo, while strict change-review teams may need Gerrit.

Can runners be isolated by project or trust level? Yes. Runner isolation is part of the assessment. Assistance can separate general CI, privileged builds, production deployments, private-network jobs, and untrusted workloads when the support model includes runner operations.

Can we keep repositories in our own cloud or private network? Yes. Customer-cloud and private-network deployments are common when data location, compliance, billing, or connectivity requirements must remain under your control.