[{"data":1,"prerenderedAt":710},["ShallowReactive",2],{"/de-de/blog/demystifying-ci-cd-variables/":3,"navigation-de-de":40,"banner-de-de":459,"footer-de-de":472,"Veethika Mishra":682,"next-steps-de-de":695},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":16,"config":30,"_id":33,"_type":34,"title":35,"_source":36,"_file":37,"_stem":38,"_extension":39},"/de-de/blog/demystifying-ci-cd-variables","blog",false,"",{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},"GitLab-Umgebungsvariablen entmystifiziert","CI/CD-Variablen sind nützliche (und flexible) Tools zur Steuerung von Jobs und Pipelines. Wir verraten dir alles, was du über GitLab-Umgebungsvariablen wissen musst.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664679/Blog/Hero%20Images/blog-image-template-1800x945__24_.png","https://about.gitlab.com/blog/demystifying-ci-cd-variables","https://about.gitlab.com","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab-Umgebungsvariablen entmystifiziert\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Veethika Mishra\"}],\n        \"datePublished\": \"2021-04-09\",\n      }",{"title":9,"description":10,"authors":17,"heroImage":11,"date":19,"body":20,"category":21,"tags":22,"updatedDate":29},[18],"Veethika Mishra","2021-04-09","Es gibt viel Flexibilität bei der Definition und Verwendung von Variablen für [CI/CD](https://about.gitlab.com/de-de/topics/ci-cd/). Variablen sind sehr nützlich für die Steuerung von Jobs und Pipelines und sie helfen dir zu vermeiden, Werte in der Konfigurationsdatei `.gitlab-ci.yml` festlegen zu müssen. Dieser Blogbeitrag soll ein umfassenderes Bild vermitteln, indem er alle (oder die meisten) Informationen über die Definition und die Handhabung der Variablen zusammenfasst, um das Verständnis des Geltungsbereichs und der Möglichkeiten zu erleichtern. Die relevante Dokumentation in dem Beitrag verlinkt und ist aktuell nur in englischer Sprache verfügbar.\n\nIn [GitLab CI/CD](https://docs.gitlab.com/ee/ci/) können mit Variablen Werte definiert und gespeichert werden, um Jobs anzupassen. Bei der Verwendung von Variablen müssen Werte nicht im Klartext gespeichert werden. In GitLab können CI/CD-Variablen unter **Einstellungen >> CI/CD >> Variablen** oder einfach in der Datei `.gitlab-ci.yml` definiert werden.\n\nVariablen sind nützlich, um Dienste von Drittanbietern für verschiedene Bereitstellungsumgebungen zu konfigurieren, z. B. `testing`, `staging`, `production` usw. Passe an, welche Dienste mit diesen Umgebungen verknüpft sind, indem du einfach die Variable änderst, die auf den API-Endpunkt zeigt, den die Dienste verwenden sollen. Verwende auch Variablen, um Jobs zu konfigurieren, und stelle sie dann als Umgebungsvariablen innerhalb der Jobs zur Verfügung, wenn diese ausgeführt werde.\n\n![GitLab liest die Datei .gitlab-ci.yml, um die referenzierte Variable zu scannen und sendet die Informationen an den GitLab Runner. Die Variablen werden auf dem Runner angezeigt und vom Runner ausgegeben.](https://about.gitlab.com/images/blogimages/demystifying-ci-cd-variables/variables_processing.jpeg)\n\n## Die Beziehung zwischen Variablen und Umgebungen\n\nDer Prozess der Softwareentwicklung umfasst verschiedene Phasen, in denen ein Produkt getestet wird, bevor es an die Benutzer(innen) ausgeliefert wird. Zur Definition dieser Phasen werden [Umgebungen](https://docs.gitlab.com/ee/ci/environments/) verwendet, die von Team zu Team und zwischen Unternehmen unterschiedlich sein können.\n\nVariablen sind dagegen Datenwerte, die sich durch die Interaktion der Benutzer(innen) mit dem Produkt ändern können. Beispielsweise kann ihr Alter, ihre Vorlieben oder eine beliebige andere Eingabe den nächsten Schritt in der Aufgabenfolge des Produkts bestimmen.\n\nWir hören oft den Begriff [Umgebungsvariable](https://docs.gitlab.com/ee/administration/environment_variables.html). Dabei handelt es sich um Variablen, die in einer bestimmten Umgebung, aber außerhalb der Anwendung definiert sind. CI/CD-Variablen von GitLab bieten Entwickler(inne)n die Möglichkeit, Werte in ihrem Code zu konfigurieren. Variablen sind hilfreich, da sie sicherstellen, dass der Code flexibel ist. Mit CI/CD-Variablen von GitLab können Beutzer(innen) eine in einer bestimmten Umgebung bereitgestellte Anwendung ändern, ohne den Code zu ändern. Es ist einfach, Tests durchzuführen oder sogar Dienste von Drittanbietern zu integrieren, indem eine Umgebungsvariable außerhalb der Anwendung geändert wird.\n\n## Geltungsbereich der Variablen für CI/CD\n\n![Hierarchie für CI/CD-Variablen: 1) Variablen für die manuelle Ausführung, Auslösung und Planung von Pipelines, 2) Geschützte Variablen auf Projekt-, Gruppen- und Instanzebene, 3) Geerbte CI/CD-Variablen, 4) Job-Ebene, globale yml-definierte Variablen, 5) Bereitstellungsvariablen, 6) Vordefinierte CI/CD-Variablen](https://about.gitlab.com/images/blogimages/demystifying-ci-cd-variables/variables_precedence.jpeg)\n\n### `.gitlab-ci.yml`-definierte Variablen\n\nVariablen, die in der Arbeitsumgebung verfügbar sein müssen, können zu GitLab hinzugefügt werden. Diese CI/CD-Variablen sind dazu gedacht, nicht-sensible Projektkonfigurationen wie z. B. die URL der Datenbank in der Datei `.gitlab-ci.yml` zu speichern. Verwende diese Variable in mehreren Jobs oder Skripten, wo immer der Wert benötigt wird. Wenn sich der Wert ändert, musst du die Variable nur einmal aktualisieren und die Änderung wird überall dort übernommen, wo die Variable verwendet wird.\n\n### Projekt-CI/CD-Variablen\n\nEinen Schritt über die Repository-spezifischen Anforderungen hinaus kannst du CI/CD-Variablen in den [Projekt-Einstellungen](https://docs.gitlab.com/ee/ci/variables/#for-a-project) definieren und für CI/CD-Pipelines verfügbar machen. Diese werden aus dem Repository heraus gespeichert (nicht in der Datei `.gitlab-ci.yml`), sind aber weiterhin in der CI/CD-Konfiguration und den Skripten verfügbar. Durch das Speichern der Variablen außerhalb der Datei `.gitlab-ci.yml` werden diese Werte auf einen reinen Projektgeltungsbereich beschränkt und nicht als Klartext im Projekt gespeichert.\n\n### CI/CD-Variablen für Gruppen und Instanzen\n\nEinige Variablen sind auf Gruppen- oder sogar Instanzebene relevant und können für alle Projekte in einer Gruppe oder Instanz nützlich sein. Definiere die Variablen in den [Gruppen- oder Instanzeinstellungen](https://docs.gitlab.com/ee/ci/variables/#for-a-group), sodass alle Projekte innerhalb dieser Bereiche die Variablen verwenden können, ohne den Wert zu kennen oder die Variablen für den untergeordneten Bereich erstellen zu müssen. Zum Beispiel kann ein gemeinsamer Wert, der in mehreren Projekten aktualisiert werden muss, leicht verwaltet werden, wenn er an einer einzigen Stelle aktualisiert wird. Alternativ können mehrere Projekte ein bestimmtes Passwort verwenden, ohne den Wert des Passworts selbst kennen zu müssen.\n\n## Jobs und Pipelines als Umgebungen\n\nDie CI/CD-Variablen von GitLab werden nicht nur als Umgebungsvariablen verwendet, sondern auch in der Konfigurationsdatei `.gitlab-ci.yml`, um das Verhalten der Pipeline unabhängig von der Umgebung zu konfigurieren. Die Variablen können in den Projekt-/Gruppen-/Instanzeinstellungen gespeichert und Jobs in Pipelines zur Verfügung gestellt werden.\n\nZum Beispiel:\n\n```  \njob:  \n  rules:  \n    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH  \n  script:  \n  - echo \"This job ran on the $CI_COMMIT_BRANCH branch.\"  \n```\n\nDie Variable `($CI_COMMIT_BRANCH)` im Skriptabschnitt wird in dem Bereich des Jobs ausgeführt, in dem sie definiert wurde. Dieser Bereich ist die „Job-Umgebung“ – das heißt, wenn der Job gestartet wird, startet der GitLab-Runner einen Docker-Container und führt den Job in dieser Umgebung aus. Der Runner stellt diese Variable (und alle anderen vordefinierten oder benutzerdefinierten Variablen) dem Job zur Verfügung und kann ihren Wert bei Bedarf in der Protokollausgabe anzeigen.\n\nDie Variable wird jedoch **auch** im Abschnitt `if:` verwendet, um zu bestimmen, wann der Job ausgeführt werden soll. Dies ist an sich keine Umgebung, weshalb wir diese CI/CD-Variablen aufrufen. Sie können verwendet werden, um CI/CD-Jobs dynamisch zu konfigurieren, **sowie** als Umgebungsvariablen, wenn der Job ausgeführt wird.\n\n## Vordefinierte Variablen\n\nEine Reihe von Variablen werden [vordefiniert](https://docs.gitlab.com/ee/ci/variables/predefined_variables.html), wenn eine GitLab-CI/CD-Pipeline gestartet wird. Benutzer(innen) können sofort auf Werte für Commit-, Projekt- oder Pipeline-Details zugreifen, ohne die Variablen selbst definieren zu müssen.\n\n## Benutzerdefinierte CI/CD-Variablen\n\n![Runner können zwei Arten von benutzerdefinierten CI/CD-Variablen erstellen: Typ und Datei.](https://about.gitlab.com/images/blogimages/demystifying-ci-cd-variables/variable_types.jpeg)\n\nWenn eine CI/CD-Variable in den Einstellungen erstellt wird, gibt GitLab den Benutzer(innen) mehr Konfigurationsmöglichkeiten für die Variable. Verwende diese zusätzlichen Konfigurationsoptionen für eine strengere Kontrolle sensibler Variablen:\n\n**Geltungsbereich: Umgebung:** Wenn eine Variable nur in einer bestimmten Umgebung verwendet werden soll, konfiguriere sie so, dass sie nur in dieser Umgebung verfügbar ist. Du kannst beispielsweise festlegen, dass ein Bereitstellungstoken nur in der Umgebung `production` verfügbar ist.\n\n**Geschützte Variablen:** Ähnlich wie bei der Option „Geltungsbereich: Umgebung“ kann eine Variable so konfiguriert werden, dass sie nur verfügbar ist, wenn die Pipeline in einem geschützten Branch ausgeführt wird, z. B. in deinem Standard-Branch.\n\n**Variablentyp:** Für einige Anwendungen musst du die Konfiguration in Form einer Datei übergeben. Wenn du eine Anwendung hast, die diese Konfiguration erfordert, lege den Variablentyp einfach auf „Datei“ fest. Wenn die CI/CD-Variable auf diese Weise konfiguriert wird, schreibt der Runner die Variable in eine temporäre Datei und speichert den Pfad zu dieser Datei als Wert, wenn er sie in der Umgebung verfügbar macht. Als Nächstes können die Benutzer(innen) den Pfad zu der Datei an alle Anwendungen weitergeben, die sie benötigen.\n\nZusätzlich zu den genannten Methoden zur Definition und Verwendung von Variablen hat GitLab eine Funktion eingeführt, die vorgefertigte Variablen generiert, wenn eine Pipeline manuell ausgeführt werden muss. Vorgefertigte Variablen reduzieren die Fehlerwahrscheinlichkeit und erleichtern die Bedienung der Pipeline.\n\n**Maskierte Variablen:** [Maskierte Variablen](https://docs.gitlab.com/ee/ci/variables/#mask-a-cicd-variable) sind CI-Variablen, die in Job-Protokollen **maskiert** wurden, um zu verhindern, dass der Wert der Variablen angezeigt wird. \n\n**Maskierte und versteckte Variablen:** Die in [GitLab 17.4](https://about.gitlab.com/releases/2024/09/19/gitlab-17-4-released/#hide-cicd-variable-values-in-the-ui) eingeführten [maskierten und versteckten Variablen](https://docs.gitlab.com/ee/ci/variables/#hide-a-cicd-variable) bieten die gleiche Maskierungsfunktion für Job-Protokolle und **verstecken den Wert** **in der Einstellungsoberfläche**. Wir empfehlen, keine dieser Variablen für sensible Daten (z. B. Geheimnisse) zu verwenden, da diese versehentlich offengelegt werden könnten.\n\n## Geheimnisse\n\nGeheimnisse sind sensible Zugangsdaten, die vertraulich behandelt werden sollten. Beispiele für Geheimnisse sind\n\n* Passwörter  \n* SSH-Schlüssel  \n* Zugriffstoken  \n* Alle anderen Arten von Zugangsdaten, deren Offenlegung für ein Unternehmen schädlich wäre.\n\nGitLab ermöglicht es seinen Benutzer(innen) derzeit mit Hilfe von HashiCorp Vault, Google Cloud Secret Manager und Azure Key Vault, [externe Geheimnisse für CI zu verwenden](https://docs.gitlab.com/ee/ci/secrets/), um Schlüssel, Token und andere Geheimnisse auf Projektebene sicher zu verwalten. So können Benutzer(innen) diese Geheimnisse aus Sicherheitsgründen von anderen CI/CD-Variablen trennen.\n\n### GitLab Geheimnismanager\n\nNeben der Unterstützung für externe Geheimnisse in CI arbeitet GitLab auch an der Einführung einer [nativen Lösung zur Verwaltung von Geheimnissen](https://gitlab.com/groups/gitlab-org/-/epics/10108), um Geheimnisse sicher und bequem in GitLab zu speichern. Diese Lösung wird Kund(inn)en auch dabei helfen, gespeicherte Geheimnisse in GitLab-spezifischen Komponenten und Umgebungen zu verwenden und den Zugriff auf Namensraum-Gruppen und Projektebene einfach zu verwalten. \n\n## Mehr lesen\n* [Nativer GitLab Geheimnismanager für mehr Sicherheit in der Software-Lieferkette](https://about.gitlab.com/blog/gitlab-native-secrets-manager-to-give-software-supply-chain-security-a-boost/) (nur in englischer Sprache verfügbar)\n\n***Haftungsausschlussklausel:** Dieser Blog enthält Informationen über kommende Produkte, Funktionen oder Funktionalitäten. Bitte beachte, dass die Informationen in diesem Blogbeitrag nur zu Informationszwecken dienen. Bitte verlasse dich nicht auf diese Informationen, wenn du etwas kaufen oder planen möchtest. Wie bei allen Projekten können sich die in diesem Blog und auf den verlinkten Seiten genannten Punkte ändern oder verzögern. Die Entwicklung, Freigabe und der Zeitplan von Produkten, Funktionen oder Funktionalitäten liegen im alleinigen Ermessen von GitLab.*\n","engineering",[23,24,25,26,27,28],"CD","features","inside GitLab","CI","CI/CD","tutorial","2025-01-28",{"slug":31,"featured":6,"template":32},"demystifying-ci-cd-variables","BlogPost","content:de-de:blog:demystifying-ci-cd-variables.yml","yaml","Demystifying Ci Cd Variables","content","de-de/blog/demystifying-ci-cd-variables.yml","de-de/blog/demystifying-ci-cd-variables","yml",{"_path":41,"_dir":42,"_draft":6,"_partial":6,"_locale":7,"data":43,"_id":455,"_type":34,"title":456,"_source":36,"_file":457,"_stem":458,"_extension":39},"/shared/de-de/main-navigation","de-de",{"logo":44,"freeTrial":49,"sales":54,"login":59,"items":64,"search":396,"minimal":432,"duo":446},{"config":45},{"href":46,"dataGaName":47,"dataGaLocation":48},"/de-de/","gitlab logo","header",{"text":50,"config":51},"Kostenlose Testversion anfordern",{"href":52,"dataGaName":53,"dataGaLocation":48},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":55,"config":56},"Vertrieb kontaktieren",{"href":57,"dataGaName":58,"dataGaLocation":48},"/de-de/sales/","sales",{"text":60,"config":61},"Anmelden",{"href":62,"dataGaName":63,"dataGaLocation":48},"https://gitlab.com/users/sign_in/","sign in",[65,109,207,212,317,377],{"text":66,"config":67,"cards":69,"footer":92},"Plattform",{"dataNavLevelOne":68},"platform",[70,76,84],{"title":66,"description":71,"link":72},"Die umfassendste KI-basierte DevSecOps-Plattform",{"text":73,"config":74},"Erkunde unsere Plattform",{"href":75,"dataGaName":68,"dataGaLocation":48},"/de-de/platform/",{"title":77,"description":78,"link":79},"GitLab Duo (KI)","Entwickle Software schneller mit KI in jeder Phase der Entwicklung",{"text":80,"config":81},"Lerne GitLab Duo kennen",{"href":82,"dataGaName":83,"dataGaLocation":48},"/de-de/gitlab-duo/","gitlab duo ai",{"title":85,"description":86,"link":87},"Gründe, die für GitLab sprechen","10 Gründe, warum Unternehmen sich für GitLab entscheiden",{"text":88,"config":89},"Mehr erfahren",{"href":90,"dataGaName":91,"dataGaLocation":48},"/de-de/why-gitlab/","why gitlab",{"title":93,"items":94},"Erste Schritte mit",[95,100,105],{"text":96,"config":97},"Platform Engineering",{"href":98,"dataGaName":99,"dataGaLocation":48},"/de-de/solutions/platform-engineering/","platform engineering",{"text":101,"config":102},"Entwicklererfahrung",{"href":103,"dataGaName":104,"dataGaLocation":48},"/de-de/developer-experience/","Developer experience",{"text":106,"config":107},"MLOps",{"href":108,"dataGaName":106,"dataGaLocation":48},"/de-de/topics/devops/the-role-of-ai-in-devops/",{"text":110,"left":111,"config":112,"link":114,"lists":118,"footer":189},"Produkt",true,{"dataNavLevelOne":113},"solutions",{"text":115,"config":116},"Alle Lösungen anzeigen",{"href":117,"dataGaName":113,"dataGaLocation":48},"/de-de/solutions/",[119,144,167],{"title":120,"description":121,"link":122,"items":127},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":123},{"icon":124,"href":125,"dataGaName":126,"dataGaLocation":48},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[128,131,135,140],{"text":27,"config":129},{"href":130,"dataGaLocation":48,"dataGaName":27},"/de-de/solutions/continuous-integration/",{"text":132,"config":133},"KI-unterstützte Entwicklung",{"href":82,"dataGaLocation":48,"dataGaName":134},"AI assisted development",{"text":136,"config":137},"Quellcodeverwaltung",{"href":138,"dataGaLocation":48,"dataGaName":139},"/de-de/solutions/source-code-management/","Source Code Management",{"text":141,"config":142},"Automatisierte Softwarebereitstellung",{"href":125,"dataGaLocation":48,"dataGaName":143},"Automated software delivery",{"title":145,"description":146,"link":147,"items":152},"Sicherheit","Entwickle schneller, ohne die Sicherheit zu gefährden",{"config":148},{"href":149,"dataGaName":150,"dataGaLocation":48,"icon":151},"/de-de/solutions/security-compliance/","security and compliance","ShieldCheckLight",[153,157,162],{"text":154,"config":155},"Sicherheit und Compliance",{"href":149,"dataGaLocation":48,"dataGaName":156},"Security & Compliance",{"text":158,"config":159},"Schutz der Software-Lieferkette",{"href":160,"dataGaLocation":48,"dataGaName":161},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":163,"config":164},"Compliance und Governance",{"href":165,"dataGaLocation":48,"dataGaName":166},"/de-de/solutions/continuous-software-compliance/","Compliance and governance",{"title":168,"link":169,"items":174},"Bewertung",{"config":170},{"icon":171,"href":172,"dataGaName":173,"dataGaLocation":48},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[175,179,184],{"text":176,"config":177},"Sichtbarkeit und Bewertung",{"href":172,"dataGaLocation":48,"dataGaName":178},"Visibility and Measurement",{"text":180,"config":181},"Wertstrommanagement",{"href":182,"dataGaLocation":48,"dataGaName":183},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":185,"config":186},"Analysen und Einblicke",{"href":187,"dataGaLocation":48,"dataGaName":188},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":190,"items":191},"GitLab für",[192,197,202],{"text":193,"config":194},"Enterprise",{"href":195,"dataGaLocation":48,"dataGaName":196},"/de-de/enterprise/","enterprise",{"text":198,"config":199},"Kleinunternehmen",{"href":200,"dataGaLocation":48,"dataGaName":201},"/de-de/small-business/","small business",{"text":203,"config":204},"den öffentlichen Sektor",{"href":205,"dataGaLocation":48,"dataGaName":206},"/de-de/solutions/public-sector/","public sector",{"text":208,"config":209},"Preise",{"href":210,"dataGaName":211,"dataGaLocation":48,"dataNavLevelOne":211},"/de-de/pricing/","pricing",{"text":213,"config":214,"link":216,"lists":220,"feature":304},"Ressourcen",{"dataNavLevelOne":215},"resources",{"text":217,"config":218},"Alle Ressourcen anzeigen",{"href":219,"dataGaName":215,"dataGaLocation":48},"/de-de/resources/",[221,254,276],{"title":222,"items":223},"Erste Schritte",[224,229,234,239,244,249],{"text":225,"config":226},"Installieren",{"href":227,"dataGaName":228,"dataGaLocation":48},"/de-de/install/","install",{"text":230,"config":231},"Kurzanleitungen",{"href":232,"dataGaName":233,"dataGaLocation":48},"/de-de/get-started/","quick setup checklists",{"text":235,"config":236},"Lernen",{"href":237,"dataGaLocation":48,"dataGaName":238},"https://university.gitlab.com/","learn",{"text":240,"config":241},"Produktdokumentation",{"href":242,"dataGaName":243,"dataGaLocation":48},"https://docs.gitlab.com/","product documentation",{"text":245,"config":246},"Best-Practice-Videos",{"href":247,"dataGaName":248,"dataGaLocation":48},"/de-de/getting-started-videos/","best practice videos",{"text":250,"config":251},"Integrationen",{"href":252,"dataGaName":253,"dataGaLocation":48},"/de-de/integrations/","integrations",{"title":255,"items":256},"Entdecken",[257,262,266,271],{"text":258,"config":259},"Kundenerfolge",{"href":260,"dataGaName":261,"dataGaLocation":48},"/customers/","customer success stories",{"text":263,"config":264},"Blog",{"href":265,"dataGaName":5,"dataGaLocation":48},"/de-de/blog/",{"text":267,"config":268},"Remote",{"href":269,"dataGaName":270,"dataGaLocation":48},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":272,"config":273},"TeamOps",{"href":274,"dataGaName":275,"dataGaLocation":48},"/de-de/teamops/","teamops",{"title":277,"items":278},"Vernetzen",[279,284,289,294,299],{"text":280,"config":281},"GitLab-Services",{"href":282,"dataGaName":283,"dataGaLocation":48},"/de-de/services/","services",{"text":285,"config":286},"Community",{"href":287,"dataGaName":288,"dataGaLocation":48},"/community/","community",{"text":290,"config":291},"Forum",{"href":292,"dataGaName":293,"dataGaLocation":48},"https://forum.gitlab.com/","forum",{"text":295,"config":296},"Veranstaltungen",{"href":297,"dataGaName":298,"dataGaLocation":48},"/events/","events",{"text":300,"config":301},"Partner",{"href":302,"dataGaName":303,"dataGaLocation":48},"/de-de/partners/","partners",{"backgroundColor":305,"textColor":306,"text":307,"image":308,"link":312},"#2f2a6b","#fff","Perspektiven für die Softwareentwicklung der Zukunft",{"altText":309,"config":310},"the source promo card",{"src":311},"/images/navigation/the-source-promo-card.svg",{"text":313,"config":314},"Lies die News",{"href":315,"dataGaName":316,"dataGaLocation":48},"/de-de/the-source/","the source",{"text":318,"config":319,"lists":321},"Unternehmen",{"dataNavLevelOne":320},"company",[322],{"items":323},[324,329,335,337,342,347,352,357,362,367,372],{"text":325,"config":326},"Über",{"href":327,"dataGaName":328,"dataGaLocation":48},"/de-de/company/","about",{"text":330,"config":331,"footerGa":334},"Karriere",{"href":332,"dataGaName":333,"dataGaLocation":48},"/jobs/","jobs",{"dataGaName":333},{"text":295,"config":336},{"href":297,"dataGaName":298,"dataGaLocation":48},{"text":338,"config":339},"Geschäftsführung",{"href":340,"dataGaName":341,"dataGaLocation":48},"/company/team/e-group/","leadership",{"text":343,"config":344},"Team",{"href":345,"dataGaName":346,"dataGaLocation":48},"/company/team/","team",{"text":348,"config":349},"Handbuch",{"href":350,"dataGaName":351,"dataGaLocation":48},"https://handbook.gitlab.com/","handbook",{"text":353,"config":354},"Investor Relations",{"href":355,"dataGaName":356,"dataGaLocation":48},"https://ir.gitlab.com/","investor relations",{"text":358,"config":359},"Trust Center",{"href":360,"dataGaName":361,"dataGaLocation":48},"/de-de/security/","trust center",{"text":363,"config":364},"AI Transparency Center",{"href":365,"dataGaName":366,"dataGaLocation":48},"/de-de/ai-transparency-center/","ai transparency center",{"text":368,"config":369},"Newsletter",{"href":370,"dataGaName":371,"dataGaLocation":48},"/company/contact/","newsletter",{"text":373,"config":374},"Presse",{"href":375,"dataGaName":376,"dataGaLocation":48},"/press/","press",{"text":378,"config":379,"lists":380},"Kontakt",{"dataNavLevelOne":320},[381],{"items":382},[383,386,391],{"text":55,"config":384},{"href":57,"dataGaName":385,"dataGaLocation":48},"talk to sales",{"text":387,"config":388},"Support",{"href":389,"dataGaName":390,"dataGaLocation":48},"/support/","get help",{"text":392,"config":393},"Kundenportal",{"href":394,"dataGaName":395,"dataGaLocation":48},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":397,"login":398,"suggestions":405},"Schließen",{"text":399,"link":400},"Um Repositories und Projekte zu durchsuchen, melde dich an bei",{"text":401,"config":402},"gitlab.com",{"href":62,"dataGaName":403,"dataGaLocation":404},"search login","search",{"text":406,"default":407},"Vorschläge",[408,411,416,418,423,428],{"text":77,"config":409},{"href":82,"dataGaName":410,"dataGaLocation":404},"GitLab Duo (AI)",{"text":412,"config":413},"Code Suggestions (KI)",{"href":414,"dataGaName":415,"dataGaLocation":404},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":27,"config":417},{"href":130,"dataGaName":27,"dataGaLocation":404},{"text":419,"config":420},"GitLab auf AWS",{"href":421,"dataGaName":422,"dataGaLocation":404},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":424,"config":425},"GitLab auf Google Cloud",{"href":426,"dataGaName":427,"dataGaLocation":404},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":429,"config":430},"Warum GitLab?",{"href":90,"dataGaName":431,"dataGaLocation":404},"Why GitLab?",{"freeTrial":433,"mobileIcon":438,"desktopIcon":443},{"text":434,"config":435},"Kostenlos testen",{"href":436,"dataGaName":53,"dataGaLocation":437},"https://gitlab.com/-/trials/new/","nav",{"altText":439,"config":440},"GitLab-Symbol",{"src":441,"dataGaName":442,"dataGaLocation":437},"/images/brand/gitlab-logo-tanuki.svg","gitlab icon",{"altText":439,"config":444},{"src":445,"dataGaName":442,"dataGaLocation":437},"/images/brand/gitlab-logo-type.svg",{"freeTrial":447,"mobileIcon":451,"desktopIcon":453},{"text":448,"config":449},"Erfahre mehr über GitLab Duo",{"href":82,"dataGaName":450,"dataGaLocation":437},"gitlab duo",{"altText":439,"config":452},{"src":441,"dataGaName":442,"dataGaLocation":437},{"altText":439,"config":454},{"src":445,"dataGaName":442,"dataGaLocation":437},"content:shared:de-de:main-navigation.yml","Main Navigation","shared/de-de/main-navigation.yml","shared/de-de/main-navigation",{"_path":460,"_dir":42,"_draft":6,"_partial":6,"_locale":7,"title":461,"titleMobile":461,"button":462,"config":467,"_id":469,"_type":34,"_source":36,"_file":470,"_stem":471,"_extension":39},"/shared/de-de/banner","GitLab 18 und der nächste Schritt im Bereich der intelligenten DevSecOps. Sei am 24. Juni dabei.",{"text":463,"config":464},"Jetzt registrieren",{"href":465,"dataGaName":466,"dataGaLocation":48},"/de-de/eighteen/","gitlab 18 banner",{"layout":468},"release","content:shared:de-de:banner.yml","shared/de-de/banner.yml","shared/de-de/banner",{"_path":473,"_dir":42,"_draft":6,"_partial":6,"_locale":7,"data":474,"_id":678,"_type":34,"title":679,"_source":36,"_file":680,"_stem":681,"_extension":39},"/shared/de-de/main-footer",{"text":475,"source":476,"edit":482,"contribute":487,"config":492,"items":497,"minimal":670},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":477,"config":478},"Quelltext der Seite anzeigen",{"href":479,"dataGaName":480,"dataGaLocation":481},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":483,"config":484},"Diese Seite bearbeiten",{"href":485,"dataGaName":486,"dataGaLocation":481},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":488,"config":489},"Beteilige dich",{"href":490,"dataGaName":491,"dataGaLocation":481},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":493,"facebook":494,"youtube":495,"linkedin":496},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[498,521,576,605,640],{"title":66,"links":499,"subMenu":504},[500],{"text":501,"config":502},"DevSecOps-Plattform",{"href":75,"dataGaName":503,"dataGaLocation":481},"devsecops platform",[505],{"title":208,"links":506},[507,511,516],{"text":508,"config":509},"Tarife anzeigen",{"href":210,"dataGaName":510,"dataGaLocation":481},"view plans",{"text":512,"config":513},"Vorteile von Premium",{"href":514,"dataGaName":515,"dataGaLocation":481},"/de-de/pricing/premium/","why premium",{"text":517,"config":518},"Vorteile von Ultimate",{"href":519,"dataGaName":520,"dataGaLocation":481},"/de-de/pricing/ultimate/","why ultimate",{"title":522,"links":523},"Lösungen",[524,529,532,534,539,544,548,551,554,559,561,563,566,571],{"text":525,"config":526},"Digitale Transformation",{"href":527,"dataGaName":528,"dataGaLocation":481},"/de-de/solutions/digital-transformation/","digital transformation",{"text":154,"config":530},{"href":149,"dataGaName":531,"dataGaLocation":481},"security & compliance",{"text":141,"config":533},{"href":125,"dataGaName":126,"dataGaLocation":481},{"text":535,"config":536},"Agile Entwicklung",{"href":537,"dataGaName":538,"dataGaLocation":481},"/de-de/solutions/agile-delivery/","agile delivery",{"text":540,"config":541},"Cloud-Transformation",{"href":542,"dataGaName":543,"dataGaLocation":481},"/de-de/solutions/cloud-native/","cloud transformation",{"text":545,"config":546},"SCM",{"href":138,"dataGaName":547,"dataGaLocation":481},"source code management",{"text":27,"config":549},{"href":130,"dataGaName":550,"dataGaLocation":481},"continuous integration & delivery",{"text":180,"config":552},{"href":182,"dataGaName":553,"dataGaLocation":481},"value stream management",{"text":555,"config":556},"GitOps",{"href":557,"dataGaName":558,"dataGaLocation":481},"/de-de/solutions/gitops/","gitops",{"text":193,"config":560},{"href":195,"dataGaName":196,"dataGaLocation":481},{"text":198,"config":562},{"href":200,"dataGaName":201,"dataGaLocation":481},{"text":564,"config":565},"Öffentlicher Sektor",{"href":205,"dataGaName":206,"dataGaLocation":481},{"text":567,"config":568},"Bildungswesen",{"href":569,"dataGaName":570,"dataGaLocation":481},"/de-de/solutions/education/","education",{"text":572,"config":573},"Finanzdienstleistungen",{"href":574,"dataGaName":575,"dataGaLocation":481},"/de-de/solutions/finance/","financial services",{"title":213,"links":577},[578,580,582,584,587,589,591,593,595,597,599,601,603],{"text":225,"config":579},{"href":227,"dataGaName":228,"dataGaLocation":481},{"text":230,"config":581},{"href":232,"dataGaName":233,"dataGaLocation":481},{"text":235,"config":583},{"href":237,"dataGaName":238,"dataGaLocation":481},{"text":240,"config":585},{"href":242,"dataGaName":586,"dataGaLocation":481},"docs",{"text":263,"config":588},{"href":265,"dataGaName":5,"dataGaLocation":481},{"text":258,"config":590},{"href":260,"dataGaName":261,"dataGaLocation":481},{"text":267,"config":592},{"href":269,"dataGaName":270,"dataGaLocation":481},{"text":280,"config":594},{"href":282,"dataGaName":283,"dataGaLocation":481},{"text":272,"config":596},{"href":274,"dataGaName":275,"dataGaLocation":481},{"text":285,"config":598},{"href":287,"dataGaName":288,"dataGaLocation":481},{"text":290,"config":600},{"href":292,"dataGaName":293,"dataGaLocation":481},{"text":295,"config":602},{"href":297,"dataGaName":298,"dataGaLocation":481},{"text":300,"config":604},{"href":302,"dataGaName":303,"dataGaLocation":481},{"title":318,"links":606},[607,609,611,613,615,617,619,624,629,631,633,635],{"text":325,"config":608},{"href":327,"dataGaName":320,"dataGaLocation":481},{"text":330,"config":610},{"href":332,"dataGaName":333,"dataGaLocation":481},{"text":338,"config":612},{"href":340,"dataGaName":341,"dataGaLocation":481},{"text":343,"config":614},{"href":345,"dataGaName":346,"dataGaLocation":481},{"text":348,"config":616},{"href":350,"dataGaName":351,"dataGaLocation":481},{"text":353,"config":618},{"href":355,"dataGaName":356,"dataGaLocation":481},{"text":620,"config":621},"Umwelt, Soziales und Governance",{"href":622,"dataGaName":623,"dataGaLocation":481},"/de-de/environmental-social-governance/","environmental, social and governance",{"text":625,"config":626},"Vielfalt, Inklusion und Zugehörigkeit",{"href":627,"dataGaName":628,"dataGaLocation":481},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":358,"config":630},{"href":360,"dataGaName":361,"dataGaLocation":481},{"text":368,"config":632},{"href":370,"dataGaName":371,"dataGaLocation":481},{"text":373,"config":634},{"href":375,"dataGaName":376,"dataGaLocation":481},{"text":636,"config":637},"Transparenzerklärung zu moderner Sklaverei",{"href":638,"dataGaName":639,"dataGaLocation":481},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":641,"links":642},"Nimm Kontakt auf",[643,646,648,650,655,660,665],{"text":644,"config":645},"Sprich mit einem Experten/einer Expertin",{"href":57,"dataGaName":58,"dataGaLocation":481},{"text":387,"config":647},{"href":389,"dataGaName":390,"dataGaLocation":481},{"text":392,"config":649},{"href":394,"dataGaName":395,"dataGaLocation":481},{"text":651,"config":652},"Status",{"href":653,"dataGaName":654,"dataGaLocation":481},"https://status.gitlab.com/","status",{"text":656,"config":657},"Nutzungsbedingungen",{"href":658,"dataGaName":659,"dataGaLocation":481},"/terms/","terms of use",{"text":661,"config":662},"Datenschutzerklärung",{"href":663,"dataGaName":664,"dataGaLocation":481},"/privacy/","privacy statement",{"text":666,"config":667},"Cookie-Einstellungen",{"dataGaName":668,"dataGaLocation":481,"id":669,"isOneTrustButton":111},"cookie preferences","ot-sdk-btn",{"items":671},[672,674,676],{"text":656,"config":673},{"href":658,"dataGaName":659,"dataGaLocation":481},{"text":661,"config":675},{"href":663,"dataGaName":664,"dataGaLocation":481},{"text":666,"config":677},{"dataGaName":668,"dataGaLocation":481,"id":669,"isOneTrustButton":111},"content:shared:de-de:main-footer.yml","Main Footer","shared/de-de/main-footer.yml","shared/de-de/main-footer",[683],{"_path":684,"_dir":685,"_draft":6,"_partial":6,"_locale":7,"content":686,"config":690,"_id":692,"_type":34,"title":18,"_source":36,"_file":693,"_stem":694,"_extension":39},"/en-us/blog/authors/veethika-mishra","authors",{"name":18,"config":687},{"headshot":688,"ctfId":689},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664676/Blog/Author%20Headshots/veethika-headshot.jpg","veethika",{"template":691},"BlogAuthor","content:en-us:blog:authors:veethika-mishra.yml","en-us/blog/authors/veethika-mishra.yml","en-us/blog/authors/veethika-mishra",{"_path":696,"_dir":42,"_draft":6,"_partial":6,"_locale":7,"header":697,"eyebrow":698,"blurb":699,"button":700,"secondaryButton":704,"_id":706,"_type":34,"title":707,"_source":36,"_file":708,"_stem":709,"_extension":39},"/shared/de-de/next-steps","Stelle jetzt bessere Software schneller bereit","Mehr als 50 % der Fortune-100-Unternehmen vertrauen GitLab","Erlebe, was dein Team mit der intelligenten\n\n\nDevSecOps-Plattform erreichen kann.\n",{"text":50,"config":701},{"href":702,"dataGaName":53,"dataGaLocation":703},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":55,"config":705},{"href":57,"dataGaName":58,"dataGaLocation":703},"content:shared:de-de:next-steps.yml","Next Steps","shared/de-de/next-steps.yml","shared/de-de/next-steps",1751548525400]