[{"data":1,"prerenderedAt":1189},["ShallowReactive",2],{"/de-de/blog/categories/engineering":3,"navigation-de-de":21,"banner-de-de":441,"footer-de-de":454,"engineering-category-de-de":663,"footer-source-/de-de/blog/categories/engineering/":1185},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":11,"config":12,"_id":15,"_type":16,"title":9,"_source":17,"_file":18,"_stem":19,"_extension":20},"/de-de/blog/categories/engineering","categories",false,"",{"title":9,"description":10},"Engineering","Browse articles related to Engineering on the GitLab Blog",{"name":9},{"template":13,"slug":14,"hide":6},"BlogCategory","engineering","content:de-de:blog:categories:engineering.yml","yaml","content","de-de/blog/categories/engineering.yml","de-de/blog/categories/engineering","yml",{"_path":22,"_dir":23,"_draft":6,"_partial":6,"_locale":7,"data":24,"_id":437,"_type":16,"title":438,"_source":17,"_file":439,"_stem":440,"_extension":20},"/shared/de-de/main-navigation","de-de",{"logo":25,"freeTrial":30,"sales":35,"login":40,"items":45,"search":378,"minimal":414,"duo":428},{"config":26},{"href":27,"dataGaName":28,"dataGaLocation":29},"/de-de/","gitlab logo","header",{"text":31,"config":32},"Kostenlose Testversion anfordern",{"href":33,"dataGaName":34,"dataGaLocation":29},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":36,"config":37},"Vertrieb kontaktieren",{"href":38,"dataGaName":39,"dataGaLocation":29},"/de-de/sales/","sales",{"text":41,"config":42},"Anmelden",{"href":43,"dataGaName":44,"dataGaLocation":29},"https://gitlab.com/users/sign_in/","sign in",[46,90,188,193,299,359],{"text":47,"config":48,"cards":50,"footer":73},"Plattform",{"dataNavLevelOne":49},"platform",[51,57,65],{"title":47,"description":52,"link":53},"Die umfassendste KI-basierte DevSecOps-Plattform",{"text":54,"config":55},"Erkunde unsere Plattform",{"href":56,"dataGaName":49,"dataGaLocation":29},"/de-de/platform/",{"title":58,"description":59,"link":60},"GitLab Duo (KI)","Entwickle Software schneller mit KI in jeder Phase der Entwicklung",{"text":61,"config":62},"Lerne GitLab Duo kennen",{"href":63,"dataGaName":64,"dataGaLocation":29},"/de-de/gitlab-duo/","gitlab duo ai",{"title":66,"description":67,"link":68},"Gründe, die für GitLab sprechen","10 Gründe, warum Unternehmen sich für GitLab entscheiden",{"text":69,"config":70},"Mehr erfahren",{"href":71,"dataGaName":72,"dataGaLocation":29},"/de-de/why-gitlab/","why gitlab",{"title":74,"items":75},"Erste Schritte mit",[76,81,86],{"text":77,"config":78},"Platform Engineering",{"href":79,"dataGaName":80,"dataGaLocation":29},"/de-de/solutions/platform-engineering/","platform engineering",{"text":82,"config":83},"Entwicklererfahrung",{"href":84,"dataGaName":85,"dataGaLocation":29},"/de-de/developer-experience/","Developer experience",{"text":87,"config":88},"MLOps",{"href":89,"dataGaName":87,"dataGaLocation":29},"/de-de/topics/devops/the-role-of-ai-in-devops/",{"text":91,"left":92,"config":93,"link":95,"lists":99,"footer":170},"Produkt",true,{"dataNavLevelOne":94},"solutions",{"text":96,"config":97},"Alle Lösungen anzeigen",{"href":98,"dataGaName":94,"dataGaLocation":29},"/de-de/solutions/",[100,126,148],{"title":101,"description":102,"link":103,"items":108},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":104},{"icon":105,"href":106,"dataGaName":107,"dataGaLocation":29},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[109,113,117,122],{"text":110,"config":111},"CI/CD",{"href":112,"dataGaLocation":29,"dataGaName":110},"/de-de/solutions/continuous-integration/",{"text":114,"config":115},"KI-unterstützte Entwicklung",{"href":63,"dataGaLocation":29,"dataGaName":116},"AI assisted development",{"text":118,"config":119},"Quellcodeverwaltung",{"href":120,"dataGaLocation":29,"dataGaName":121},"/de-de/solutions/source-code-management/","Source Code Management",{"text":123,"config":124},"Automatisierte Softwarebereitstellung",{"href":106,"dataGaLocation":29,"dataGaName":125},"Automated software delivery",{"title":127,"description":128,"link":129,"items":134},"Sicherheit","Entwickle schneller, ohne die Sicherheit zu gefährden",{"config":130},{"href":131,"dataGaName":132,"dataGaLocation":29,"icon":133},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[135,139,144],{"text":136,"config":137},"Application Security Testing",{"href":131,"dataGaName":138,"dataGaLocation":29},"Application security testing",{"text":140,"config":141},"Schutz der Software-Lieferkette",{"href":142,"dataGaLocation":29,"dataGaName":143},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":145,"config":146},"Software Compliance",{"href":147,"dataGaName":145,"dataGaLocation":29},"/de-de/solutions/software-compliance/",{"title":149,"link":150,"items":155},"Bewertung",{"config":151},{"icon":152,"href":153,"dataGaName":154,"dataGaLocation":29},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[156,160,165],{"text":157,"config":158},"Sichtbarkeit und Bewertung",{"href":153,"dataGaLocation":29,"dataGaName":159},"Visibility and Measurement",{"text":161,"config":162},"Wertstrommanagement",{"href":163,"dataGaLocation":29,"dataGaName":164},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":166,"config":167},"Analysen und Einblicke",{"href":168,"dataGaLocation":29,"dataGaName":169},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":171,"items":172},"GitLab für",[173,178,183],{"text":174,"config":175},"Enterprise",{"href":176,"dataGaLocation":29,"dataGaName":177},"/de-de/enterprise/","enterprise",{"text":179,"config":180},"Kleinunternehmen",{"href":181,"dataGaLocation":29,"dataGaName":182},"/de-de/small-business/","small business",{"text":184,"config":185},"den öffentlichen Sektor",{"href":186,"dataGaLocation":29,"dataGaName":187},"/de-de/solutions/public-sector/","public sector",{"text":189,"config":190},"Preise",{"href":191,"dataGaName":192,"dataGaLocation":29,"dataNavLevelOne":192},"/de-de/pricing/","pricing",{"text":194,"config":195,"link":197,"lists":201,"feature":286},"Ressourcen",{"dataNavLevelOne":196},"resources",{"text":198,"config":199},"Alle Ressourcen anzeigen",{"href":200,"dataGaName":196,"dataGaLocation":29},"/de-de/resources/",[202,235,258],{"title":203,"items":204},"Erste Schritte",[205,210,215,220,225,230],{"text":206,"config":207},"Installieren",{"href":208,"dataGaName":209,"dataGaLocation":29},"/de-de/install/","install",{"text":211,"config":212},"Kurzanleitungen",{"href":213,"dataGaName":214,"dataGaLocation":29},"/de-de/get-started/","quick setup checklists",{"text":216,"config":217},"Lernen",{"href":218,"dataGaLocation":29,"dataGaName":219},"https://university.gitlab.com/","learn",{"text":221,"config":222},"Produktdokumentation",{"href":223,"dataGaName":224,"dataGaLocation":29},"https://docs.gitlab.com/","product documentation",{"text":226,"config":227},"Best-Practice-Videos",{"href":228,"dataGaName":229,"dataGaLocation":29},"/de-de/getting-started-videos/","best practice videos",{"text":231,"config":232},"Integrationen",{"href":233,"dataGaName":234,"dataGaLocation":29},"/de-de/integrations/","integrations",{"title":236,"items":237},"Entdecken",[238,243,248,253],{"text":239,"config":240},"Kundenerfolge",{"href":241,"dataGaName":242,"dataGaLocation":29},"/de-de/customers/","customer success stories",{"text":244,"config":245},"Blog",{"href":246,"dataGaName":247,"dataGaLocation":29},"/de-de/blog/","blog",{"text":249,"config":250},"Remote",{"href":251,"dataGaName":252,"dataGaLocation":29},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":254,"config":255},"TeamOps",{"href":256,"dataGaName":257,"dataGaLocation":29},"/de-de/teamops/","teamops",{"title":259,"items":260},"Vernetzen",[261,266,271,276,281],{"text":262,"config":263},"GitLab-Services",{"href":264,"dataGaName":265,"dataGaLocation":29},"/de-de/services/","services",{"text":267,"config":268},"Community",{"href":269,"dataGaName":270,"dataGaLocation":29},"/community/","community",{"text":272,"config":273},"Forum",{"href":274,"dataGaName":275,"dataGaLocation":29},"https://forum.gitlab.com/","forum",{"text":277,"config":278},"Veranstaltungen",{"href":279,"dataGaName":280,"dataGaLocation":29},"/events/","events",{"text":282,"config":283},"Partner",{"href":284,"dataGaName":285,"dataGaLocation":29},"/de-de/partners/","partners",{"backgroundColor":287,"textColor":288,"text":289,"image":290,"link":294},"#2f2a6b","#fff","Perspektiven für die Softwareentwicklung der Zukunft",{"altText":291,"config":292},"the source promo card",{"src":293},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":295,"config":296},"Lies die News",{"href":297,"dataGaName":298,"dataGaLocation":29},"/de-de/the-source/","the source",{"text":300,"config":301,"lists":303},"Unternehmen",{"dataNavLevelOne":302},"company",[304],{"items":305},[306,311,317,319,324,329,334,339,344,349,354],{"text":307,"config":308},"Über",{"href":309,"dataGaName":310,"dataGaLocation":29},"/de-de/company/","about",{"text":312,"config":313,"footerGa":316},"Karriere",{"href":314,"dataGaName":315,"dataGaLocation":29},"/jobs/","jobs",{"dataGaName":315},{"text":277,"config":318},{"href":279,"dataGaName":280,"dataGaLocation":29},{"text":320,"config":321},"Geschäftsführung",{"href":322,"dataGaName":323,"dataGaLocation":29},"/company/team/e-group/","leadership",{"text":325,"config":326},"Team",{"href":327,"dataGaName":328,"dataGaLocation":29},"/company/team/","team",{"text":330,"config":331},"Handbuch",{"href":332,"dataGaName":333,"dataGaLocation":29},"https://handbook.gitlab.com/","handbook",{"text":335,"config":336},"Investor Relations",{"href":337,"dataGaName":338,"dataGaLocation":29},"https://ir.gitlab.com/","investor relations",{"text":340,"config":341},"Trust Center",{"href":342,"dataGaName":343,"dataGaLocation":29},"/de-de/security/","trust center",{"text":345,"config":346},"AI Transparency Center",{"href":347,"dataGaName":348,"dataGaLocation":29},"/de-de/ai-transparency-center/","ai transparency center",{"text":350,"config":351},"Newsletter",{"href":352,"dataGaName":353,"dataGaLocation":29},"/company/contact/","newsletter",{"text":355,"config":356},"Presse",{"href":357,"dataGaName":358,"dataGaLocation":29},"/press/","press",{"text":360,"config":361,"lists":362},"Kontakt",{"dataNavLevelOne":302},[363],{"items":364},[365,368,373],{"text":36,"config":366},{"href":38,"dataGaName":367,"dataGaLocation":29},"talk to sales",{"text":369,"config":370},"Support",{"href":371,"dataGaName":372,"dataGaLocation":29},"/support/","get help",{"text":374,"config":375},"Kundenportal",{"href":376,"dataGaName":377,"dataGaLocation":29},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":379,"login":380,"suggestions":387},"Schließen",{"text":381,"link":382},"Um Repositories und Projekte zu durchsuchen, melde dich an bei",{"text":383,"config":384},"gitlab.com",{"href":43,"dataGaName":385,"dataGaLocation":386},"search login","search",{"text":388,"default":389},"Vorschläge",[390,393,398,400,405,410],{"text":58,"config":391},{"href":63,"dataGaName":392,"dataGaLocation":386},"GitLab Duo (AI)",{"text":394,"config":395},"Code Suggestions (KI)",{"href":396,"dataGaName":397,"dataGaLocation":386},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":110,"config":399},{"href":112,"dataGaName":110,"dataGaLocation":386},{"text":401,"config":402},"GitLab auf AWS",{"href":403,"dataGaName":404,"dataGaLocation":386},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":406,"config":407},"GitLab auf Google Cloud",{"href":408,"dataGaName":409,"dataGaLocation":386},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":411,"config":412},"Warum GitLab?",{"href":71,"dataGaName":413,"dataGaLocation":386},"Why GitLab?",{"freeTrial":415,"mobileIcon":420,"desktopIcon":425},{"text":416,"config":417},"Kostenlos testen",{"href":418,"dataGaName":34,"dataGaLocation":419},"https://gitlab.com/-/trials/new/","nav",{"altText":421,"config":422},"GitLab-Symbol",{"src":423,"dataGaName":424,"dataGaLocation":419},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":421,"config":426},{"src":427,"dataGaName":424,"dataGaLocation":419},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"freeTrial":429,"mobileIcon":433,"desktopIcon":435},{"text":430,"config":431},"Erfahre mehr über GitLab Duo",{"href":63,"dataGaName":432,"dataGaLocation":419},"gitlab duo",{"altText":421,"config":434},{"src":423,"dataGaName":424,"dataGaLocation":419},{"altText":421,"config":436},{"src":427,"dataGaName":424,"dataGaLocation":419},"content:shared:de-de:main-navigation.yml","Main Navigation","shared/de-de/main-navigation.yml","shared/de-de/main-navigation",{"_path":442,"_dir":23,"_draft":6,"_partial":6,"_locale":7,"title":443,"button":444,"config":449,"_id":451,"_type":16,"_source":17,"_file":452,"_stem":453,"_extension":20},"/shared/de-de/banner","GitLab Duo Agent Platform ist jetzt in öffentlicher Beta!",{"text":445,"config":446},"Beta testen",{"href":447,"dataGaName":448,"dataGaLocation":29},"/de-de/gitlab-duo/agent-platform/","duo banner",{"layout":450},"release","content:shared:de-de:banner.yml","shared/de-de/banner.yml","shared/de-de/banner",{"_path":455,"_dir":23,"_draft":6,"_partial":6,"_locale":7,"data":456,"_id":659,"_type":16,"title":660,"_source":17,"_file":661,"_stem":662,"_extension":20},"/shared/de-de/main-footer",{"text":457,"source":458,"edit":464,"contribute":469,"config":474,"items":479,"minimal":651},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":459,"config":460},"Quelltext der Seite anzeigen",{"href":461,"dataGaName":462,"dataGaLocation":463},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":465,"config":466},"Diese Seite bearbeiten",{"href":467,"dataGaName":468,"dataGaLocation":463},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":470,"config":471},"Beteilige dich",{"href":472,"dataGaName":473,"dataGaLocation":463},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":475,"facebook":476,"youtube":477,"linkedin":478},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[480,503,558,587,621],{"title":47,"links":481,"subMenu":486},[482],{"text":483,"config":484},"DevSecOps-Plattform",{"href":56,"dataGaName":485,"dataGaLocation":463},"devsecops platform",[487],{"title":189,"links":488},[489,493,498],{"text":490,"config":491},"Tarife anzeigen",{"href":191,"dataGaName":492,"dataGaLocation":463},"view plans",{"text":494,"config":495},"Vorteile von Premium",{"href":496,"dataGaName":497,"dataGaLocation":463},"/de-de/pricing/premium/","why premium",{"text":499,"config":500},"Vorteile von Ultimate",{"href":501,"dataGaName":502,"dataGaLocation":463},"/de-de/pricing/ultimate/","why ultimate",{"title":504,"links":505},"Lösungen",[506,511,514,516,521,526,530,533,536,541,543,545,548,553],{"text":507,"config":508},"Digitale Transformation",{"href":509,"dataGaName":510,"dataGaLocation":463},"/de-de/topics/digital-transformation/","digital transformation",{"text":512,"config":513},"Sicherheit und Compliance",{"href":131,"dataGaName":138,"dataGaLocation":463},{"text":123,"config":515},{"href":106,"dataGaName":107,"dataGaLocation":463},{"text":517,"config":518},"Agile Entwicklung",{"href":519,"dataGaName":520,"dataGaLocation":463},"/de-de/solutions/agile-delivery/","agile delivery",{"text":522,"config":523},"Cloud-Transformation",{"href":524,"dataGaName":525,"dataGaLocation":463},"/de-de/topics/cloud-native/","cloud transformation",{"text":527,"config":528},"SCM",{"href":120,"dataGaName":529,"dataGaLocation":463},"source code management",{"text":110,"config":531},{"href":112,"dataGaName":532,"dataGaLocation":463},"continuous integration & delivery",{"text":161,"config":534},{"href":163,"dataGaName":535,"dataGaLocation":463},"value stream management",{"text":537,"config":538},"GitOps",{"href":539,"dataGaName":540,"dataGaLocation":463},"/de-de/solutions/gitops/","gitops",{"text":174,"config":542},{"href":176,"dataGaName":177,"dataGaLocation":463},{"text":179,"config":544},{"href":181,"dataGaName":182,"dataGaLocation":463},{"text":546,"config":547},"Öffentlicher Sektor",{"href":186,"dataGaName":187,"dataGaLocation":463},{"text":549,"config":550},"Bildungswesen",{"href":551,"dataGaName":552,"dataGaLocation":463},"/de-de/solutions/education/","education",{"text":554,"config":555},"Finanzdienstleistungen",{"href":556,"dataGaName":557,"dataGaLocation":463},"/de-de/solutions/finance/","financial services",{"title":194,"links":559},[560,562,564,566,569,571,573,575,577,579,581,583,585],{"text":206,"config":561},{"href":208,"dataGaName":209,"dataGaLocation":463},{"text":211,"config":563},{"href":213,"dataGaName":214,"dataGaLocation":463},{"text":216,"config":565},{"href":218,"dataGaName":219,"dataGaLocation":463},{"text":221,"config":567},{"href":223,"dataGaName":568,"dataGaLocation":463},"docs",{"text":244,"config":570},{"href":246,"dataGaName":247,"dataGaLocation":463},{"text":239,"config":572},{"href":241,"dataGaName":242,"dataGaLocation":463},{"text":249,"config":574},{"href":251,"dataGaName":252,"dataGaLocation":463},{"text":262,"config":576},{"href":264,"dataGaName":265,"dataGaLocation":463},{"text":254,"config":578},{"href":256,"dataGaName":257,"dataGaLocation":463},{"text":267,"config":580},{"href":269,"dataGaName":270,"dataGaLocation":463},{"text":272,"config":582},{"href":274,"dataGaName":275,"dataGaLocation":463},{"text":277,"config":584},{"href":279,"dataGaName":280,"dataGaLocation":463},{"text":282,"config":586},{"href":284,"dataGaName":285,"dataGaLocation":463},{"title":300,"links":588},[589,591,593,595,597,599,601,605,610,612,614,616],{"text":307,"config":590},{"href":309,"dataGaName":302,"dataGaLocation":463},{"text":312,"config":592},{"href":314,"dataGaName":315,"dataGaLocation":463},{"text":320,"config":594},{"href":322,"dataGaName":323,"dataGaLocation":463},{"text":325,"config":596},{"href":327,"dataGaName":328,"dataGaLocation":463},{"text":330,"config":598},{"href":332,"dataGaName":333,"dataGaLocation":463},{"text":335,"config":600},{"href":337,"dataGaName":338,"dataGaLocation":463},{"text":602,"config":603},"Sustainability",{"href":604,"dataGaName":602,"dataGaLocation":463},"/sustainability/",{"text":606,"config":607},"Vielfalt, Inklusion und Zugehörigkeit",{"href":608,"dataGaName":609,"dataGaLocation":463},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":340,"config":611},{"href":342,"dataGaName":343,"dataGaLocation":463},{"text":350,"config":613},{"href":352,"dataGaName":353,"dataGaLocation":463},{"text":355,"config":615},{"href":357,"dataGaName":358,"dataGaLocation":463},{"text":617,"config":618},"Transparenzerklärung zu moderner Sklaverei",{"href":619,"dataGaName":620,"dataGaLocation":463},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":622,"links":623},"Nimm Kontakt auf",[624,627,629,631,636,641,646],{"text":625,"config":626},"Sprich mit einem Experten/einer Expertin",{"href":38,"dataGaName":39,"dataGaLocation":463},{"text":369,"config":628},{"href":371,"dataGaName":372,"dataGaLocation":463},{"text":374,"config":630},{"href":376,"dataGaName":377,"dataGaLocation":463},{"text":632,"config":633},"Status",{"href":634,"dataGaName":635,"dataGaLocation":463},"https://status.gitlab.com/","status",{"text":637,"config":638},"Nutzungsbedingungen",{"href":639,"dataGaName":640,"dataGaLocation":463},"/terms/","terms of use",{"text":642,"config":643},"Datenschutzerklärung",{"href":644,"dataGaName":645,"dataGaLocation":463},"/de-de/privacy/","privacy statement",{"text":647,"config":648},"Cookie-Einstellungen",{"dataGaName":649,"dataGaLocation":463,"id":650,"isOneTrustButton":92},"cookie preferences","ot-sdk-btn",{"items":652},[653,655,657],{"text":637,"config":654},{"href":639,"dataGaName":640,"dataGaLocation":463},{"text":642,"config":656},{"href":644,"dataGaName":645,"dataGaLocation":463},{"text":647,"config":658},{"dataGaName":649,"dataGaLocation":463,"id":650,"isOneTrustButton":92},"content:shared:de-de:main-footer.yml","Main Footer","shared/de-de/main-footer.yml","shared/de-de/main-footer",{"post":664,"posts":665},null,[666,690,710,733,755,773,792,809,829,854,874,894,917,938,960,980,999,1019,1041,1061,1083,1102,1122,1145,1166],{"_path":667,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":668,"content":672,"config":683,"_id":686,"_type":16,"title":687,"_source":17,"_file":688,"_stem":689,"_extension":20},"/de-de/blog/how-we-built-a-structured-streamlit-application-framework-in-snowflake",{"config":669,"title":670,"ogTitle":670,"description":671},{"noIndex":6},"Streamlit-Framework: Systematische Infrastruktur-Governance","Das GitLab Data Team zeigt, wie frühzeitige Infrastruktur-Governance Wartungskosten verhindert. Systematischer Ansatz für Streamlit in regulierten Umgebungen.",{"title":670,"description":673,"authors":674,"heroImage":676,"date":677,"category":14,"tags":678},"Das GitLab Data Team zeigt, wie frühzeitige Infrastruktur-Governance exponentiell steigende Wartungskosten verhindert. Ein systematischer Ansatz für Streamlit-Anwendungen in regulierten Umgebungen.",[675],"Radovan Bacovic","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097447/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%284%29_3LZkiDjHLjhqEkvOvBsVKp_1750097447404.png","2025-10-20",[679,680,681,682],"product","features","security","tutorial",{"featured":6,"template":684,"slug":685},"BlogPost","how-we-built-a-structured-streamlit-application-framework-in-snowflake","content:de-de:blog:how-we-built-a-structured-streamlit-application-framework-in-snowflake.yml","How We Built A Structured Streamlit Application Framework In Snowflake","de-de/blog/how-we-built-a-structured-streamlit-application-framework-in-snowflake.yml","de-de/blog/how-we-built-a-structured-streamlit-application-framework-in-snowflake",{"_path":691,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":692,"content":695,"config":704,"_id":706,"_type":16,"title":707,"_source":17,"_file":708,"_stem":709,"_extension":20},"/de-de/blog/supercharge-your-git-workflows",{"title":693,"description":694},"Git-Workflows systematisch optimieren","Git clone-Operationen optimieren – bis zu 93% weniger Clone-Zeit und 98% weniger Speicherplatzbedarf mit dem Git Much Faster Script.",{"title":693,"description":696,"authors":697,"heroImage":699,"date":700,"category":14,"tags":701},"Git clone-Operationen optimieren – bis zu 93 % weniger Clone-Zeit und 98 % weniger Speicherplatzbedarf.",[698],"Darwin Sanoy","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098264/Blog/Hero%20Images/Blog/Hero%20Images/AdobeStock_519147119_2RafH61mqosMZv8HGAlsUj_1750098264407.jpg","2025-10-14",[682,702,703],"git","performance",{"slug":705,"template":684,"featured":92},"supercharge-your-git-workflows","content:de-de:blog:supercharge-your-git-workflows.yml","Supercharge Your Git Workflows","de-de/blog/supercharge-your-git-workflows.yml","de-de/blog/supercharge-your-git-workflows",{"_path":711,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":712,"content":716,"config":727,"_id":729,"_type":16,"title":730,"_source":17,"_file":731,"_stem":732,"_extension":20},"/de-de/blog/what-is-yaml",{"config":713,"title":714,"description":715},{"noIndex":6},"Was ist YAML? Von den Grundlagen bis zur Anwendung","YAML, auch YML, ist ein Format, das für Konfigurationsdateien und mehr verwendet wird. Dieser Artikel erklärt alles, was du zu YAML/YML wissen musst.",{"title":717,"description":718,"authors":719,"heroImage":721,"date":722,"category":14,"tags":723},"Was ist YAML? Alles erklärt, von den Grundlagen bis zur Anwendung","YAML ist ein Format, das für Konfigurationsdateien und mehr verwendet wird. Dieser Artikel erklärt die Grundlagen von YAML bis hin zu praktischen Anwendungen mit Kubernetes.",[720],"GitLab Team","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662547/Blog/Hero%20Images/what_is_yaml.jpg","2025-10-10",[724,725,726,110,537],"DevOps","kubernetes","DevSecOps",{"featured":6,"template":684,"slug":728},"what-is-yaml","content:de-de:blog:what-is-yaml.yml","What Is Yaml","de-de/blog/what-is-yaml.yml","de-de/blog/what-is-yaml",{"_path":734,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":735,"content":739,"config":749,"_id":751,"_type":16,"title":752,"_source":17,"_file":753,"_stem":754,"_extension":20},"/de-de/blog/how-gitlab-transforms-embedded-systems-testing-cycles",{"config":736,"title":737,"description":738},{"noIndex":6},"GitLab: Systematische Verbesserung von Embedded-Testing","Wie Managed Lifecycle Environments virtuelle Testumgebungen automatisieren und dabei Kosten kontrollieren sowie Feedback-Zeiten verkürzen.",{"title":740,"description":741,"authors":742,"heroImage":744,"date":745,"category":14,"tags":746},"Von manuellen Testzyklen zu automatisierten Embedded-Workflows: GitLabs Ansatz für virtuelle Testumgebungen","Managed Lifecycle Environments automatisieren virtuelle Testumgebungen für Embedded-Systeme und lösen dabei die typischen Probleme von Umgebungs-Wildwuchs und explodierenden Kosten.",[743,698],"Matt DeLaney","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099203/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%2820%29_2bJGC5ZP3WheoqzlLT05C5_1750099203484.png","2025-10-02",[679,747,748],"embedded DevOps","testing",{"featured":92,"template":684,"slug":750},"how-gitlab-transforms-embedded-systems-testing-cycles","content:de-de:blog:how-gitlab-transforms-embedded-systems-testing-cycles.yml","How Gitlab Transforms Embedded Systems Testing Cycles","de-de/blog/how-gitlab-transforms-embedded-systems-testing-cycles.yml","de-de/blog/how-gitlab-transforms-embedded-systems-testing-cycles",{"_path":756,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":757,"content":760,"config":767,"_id":769,"_type":16,"title":770,"_source":17,"_file":771,"_stem":772,"_extension":20},"/de-de/blog/fine-grained-job-tokens-ga",{"title":758,"description":759},"Granulare Job Token Berechtigungen sind jetzt verfügbar","GitLab ermöglicht granulare Berechtigungen für CI/CD Job Tokens und erhöht die Sicherheit der Software-Supply-Chain.",{"title":758,"description":759,"authors":761,"heroImage":764,"date":765,"category":14,"tags":766},[762,763],"Alex Mark","Joe Randazzo","blog/hero%20images/workflow_1800x945.png","2025-08-26",[270],{"slug":768,"featured":6,"template":684},"fine-grained-job-tokens-ga","content:de-de:blog:fine-grained-job-tokens-ga.yml","Fine Grained Job Tokens Ga","de-de/blog/fine-grained-job-tokens-ga.yml","de-de/blog/fine-grained-job-tokens-ga",{"_path":774,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":775,"config":778,"content":780,"_id":788,"_type":16,"title":789,"_source":17,"_file":790,"_stem":791,"_extension":20},"/de-de/blog/docs-site-design-overhaul",{"title":776,"description":777},"Wir haben die GitLab-Dokumentationsseite komplett redesigned","Die Produktdokumentation ist nun sauberer, einfacher zu navigieren und enthält einen Dark Mode.",{"slug":779,"featured":6,"template":684},"docs-site-design-overhaul",{"title":776,"description":781,"authors":782,"heroImage":764,"date":786,"category":14,"tags":787},"Erfahre mehr über die Features unserer neu gestalteten Produktdokumentationsseite, die einen einfachen Feedback-Mechanismus und den vielgewünschten Dark Mode bietet.",[783,784,785],"Suzanne Selhorn","Sarah German","Julia Miocene","2025-08-20",[270],"content:de-de:blog:docs-site-design-overhaul.yml","Docs Site Design Overhaul","de-de/blog/docs-site-design-overhaul.yml","de-de/blog/docs-site-design-overhaul",{"_path":793,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":794,"config":797,"content":799,"_id":805,"_type":16,"title":806,"_source":17,"_file":807,"_stem":808,"_extension":20},"/de-de/blog/custom-rules-duo-agentic-chat-deep-dive",{"title":795,"description":796},"Custom Rules für GitLab Duo: Höhere Entwicklungseffizienz","KI-Assistenten verstehen die eigene Code-Basis mit Custom Rules und generieren produktionsreifen Code mit minimalen Review-Zyklen.",{"slug":798,"featured":6,"template":684},"custom-rules-duo-agentic-chat-deep-dive",{"title":795,"description":796,"authors":800,"heroImage":744,"date":802,"category":14,"tags":803},[801],"Michael Friedrich","2025-08-12",[726,804],"AI/ML","content:de-de:blog:custom-rules-duo-agentic-chat-deep-dive.yml","Custom Rules Duo Agentic Chat Deep Dive","de-de/blog/custom-rules-duo-agentic-chat-deep-dive.yml","de-de/blog/custom-rules-duo-agentic-chat-deep-dive",{"_path":810,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":811,"content":814,"config":823,"_id":825,"_type":16,"title":826,"_source":17,"_file":827,"_stem":828,"_extension":20},"/de-de/blog/inside-gitlabs-healthy-backlog-initiative",{"noIndex":6,"title":812,"description":813,"ogTitle":812,"ogDescription":813},"So optimiert GitLab das Issue-Management für mehr Innovation","GitLab reduziert 65.000 Issues auf das Wesentliche. Erfahre, wie die Healthy Backlog Initiative schnellere Entwicklung und klarere Roadmaps ermöglicht.",{"title":815,"description":816,"authors":817,"heroImage":819,"date":820,"category":14,"tags":821},"Hinter den Kulissen von GitLabs Healthy Backlog Initiative","Wie GitLab 65.000 Issues in strategische Features, schnelle Entwicklung und direkte Community-Kommunikation verwandelt.",[818],"Stan Hu","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664458/Blog/Hero%20Images/Gartner_AI_Code_Assistants_Blog_Post_Cover_Image_1800x945.png","2025-07-23",[270,679,822],"news",{"featured":92,"template":684,"slug":824},"inside-gitlabs-healthy-backlog-initiative","content:de-de:blog:inside-gitlabs-healthy-backlog-initiative.yml","Inside Gitlabs Healthy Backlog Initiative","de-de/blog/inside-gitlabs-healthy-backlog-initiative.yml","de-de/blog/inside-gitlabs-healthy-backlog-initiative",{"_path":830,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":831,"content":839,"config":848,"_id":850,"_type":16,"title":851,"_source":17,"_file":852,"_stem":853,"_extension":20},"/de-de/blog/how-we-decreased-gitlab-repo-backup-times-from-48-hours-to-41-minutes",{"ogTitle":832,"schema":833,"ogImage":834,"ogDescription":835,"ogSiteName":836,"noIndex":6,"ogType":837,"ogUrl":838,"title":832,"canonicalUrls":838,"description":835},"GitLab: Repository-Backups von 48h auf 41min reduziert","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Verkürzung der Backup-Zeiten von 48 Stunden auf 41 Minuten\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Karthik Nayak\"},{\"@type\":\"Person\",\"name\":\"Manuel Kraft\"}],\n        \"datePublished\": \"2025-06-05\",\n      }","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097166/Blog/Hero%20Images/Blog/Hero%20Images/REFERENCE%20-%20display%20preview%20for%20blog%20images%20%282%29_2pKf8RsKzAaThmQfqHIaa7_1750097166565.png","GitLab reduziert Backup-Zeiten von 48 Stunden auf 41 Minuten! Entdecke, wie wir einen 15 Jahre alten Git-Bug mit O(N²)-Komplexität gelöst haben. Code inklusive.","https://about.gitlab.com","Artikel","https://about.gitlab.com/blog/how-we-decreased-gitlab-repo-backup-times-from-48-hours-to-41-minutes",{"heroImage":834,"authors":840,"updatedDate":843,"date":844,"title":845,"tags":846,"description":847,"category":14},[841,842],"Karthik Nayak","Manuel Kraft","2025-07-11","2025-06-05","So haben wir GitLab-Backups von 48 Stunden auf 41 Minuten beschleunigt",[],"Erfahre, wie GitLab einen Leistungsengpass in einer 15 Jahre alten Git-Funktion aufgespürt und behoben hat, was zu einer verbesserten Effizienz führte.",{"slug":849,"featured":92,"template":684},"how-we-decreased-gitlab-repo-backup-times-from-48-hours-to-41-minutes","content:de-de:blog:how-we-decreased-gitlab-repo-backup-times-from-48-hours-to-41-minutes.yml","How We Decreased Gitlab Repo Backup Times From 48 Hours To 41 Minutes","de-de/blog/how-we-decreased-gitlab-repo-backup-times-from-48-hours-to-41-minutes.yml","de-de/blog/how-we-decreased-gitlab-repo-backup-times-from-48-hours-to-41-minutes",{"_path":855,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":856,"content":863,"config":868,"_id":870,"_type":16,"title":871,"_source":17,"_file":872,"_stem":873,"_extension":20},"/de-de/blog/definition-what-is-kubernetes",{"title":857,"description":858,"ogTitle":857,"ogDescription":858,"noIndex":6,"ogImage":859,"ogUrl":860,"ogSiteName":836,"ogType":861,"canonicalUrls":860,"schema":862},"Was ist Kubernetes?","Container haben Softwareentwicklung und -Deployment revolutioniert. Wir zeigen dir hier die Vorteile von Kubernetes.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662245/Blog/Hero%20Images/blog-image-template-1800x945__16_.png","https://about.gitlab.com/blog/definition-what-is-kubernetes","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Was ist Kubernetes?\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Germany Team\"}],\n        \"datePublished\": \"2025-05-15\",\n      }",{"title":857,"description":858,"authors":864,"heroImage":859,"date":866,"category":14,"tags":867,"updatedDate":866},[865],"GitLab Germany Team","2025-05-15",[552],{"slug":869,"featured":6,"template":684},"definition-what-is-kubernetes","content:de-de:blog:definition-what-is-kubernetes.yml","Definition What Is Kubernetes","de-de/blog/definition-what-is-kubernetes.yml","de-de/blog/definition-what-is-kubernetes",{"_path":875,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":876,"content":882,"config":888,"_id":890,"_type":16,"title":891,"_source":17,"_file":892,"_stem":893,"_extension":20},"/de-de/blog/what-is-a-linux-server",{"ogTitle":877,"schema":878,"ogImage":879,"ogDescription":880,"ogSiteName":836,"noIndex":6,"ogType":861,"ogUrl":881,"title":877,"canonicalUrls":881,"description":880},"Was ist ein Linux-Server? | Leitfaden für den Einstieg ","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Linux-Server: Warum sich die Installation lohnt\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Germany Team\"}],\n        \"datePublished\": \"2025-04-14\",\n      }","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663065/Blog/Hero%20Images/serveur-linux.jpg","Wir zeigen dir, was ein Linus-Server ist und warum er sich lohnt. ✓ Definition ✓ Unterschiede ✓ Vorteile ✓ Distributionen ✓ Einrichtung ➤ Leitfaden lesen!","https://about.gitlab.com/blog/what-is-a-linux-server",{"title":883,"description":884,"authors":885,"heroImage":879,"date":886,"category":14,"tags":887},"Linux-Server: Warum sich die Installation lohnt","Linux-Server sind weltweit führend. Wir erklären dir, warum und du selbst von den Vorteilen profitieren kannst.",[865],"2025-04-14",[552],{"slug":889,"featured":6,"template":684},"what-is-a-linux-server","content:de-de:blog:what-is-a-linux-server.yml","What Is A Linux Server","de-de/blog/what-is-a-linux-server.yml","de-de/blog/what-is-a-linux-server",{"_path":895,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":896,"content":902,"config":911,"_id":913,"_type":16,"title":914,"_source":17,"_file":915,"_stem":916,"_extension":20},"/de-de/blog/automating-container-image-migration-from-amazon-ecr-to-gitlab",{"title":897,"description":898,"ogTitle":897,"ogDescription":898,"noIndex":6,"ogImage":899,"ogUrl":900,"ogSiteName":836,"ogType":861,"canonicalUrls":900,"schema":901},"Automatisierung der Migration von Container-Images von Amazon ECR zu GitLab","Wenn Plattformteams ihre CI/CD zu GitLab verschieben, sollte die Migration von Container-Images kein Engpass sein. Befolge diese Schritt-für-Schritt-Anleitung, um den Pipeline-Migrationsprozess zu automatisieren.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663129/Blog/Hero%20Images/blog-image-template-1800x945__28_.png","https://about.gitlab.com/blog/automating-container-image-migration-from-amazon-ecr-to-gitlab","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Automatisierung der Migration von Container-Images von Amazon ECR zu GitLab\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Tim Rizzi\"}],\n        \"datePublished\": \"2025-02-13\",\n      }\n                  ",{"title":897,"description":898,"authors":903,"heroImage":899,"date":905,"category":14,"tags":906,"updatedDate":910},[904],"Tim Rizzi","2025-02-13",[110,907,682,908,679,909],"AWS","DevSecOps platform","solutions architecture","2025-04-10",{"slug":912,"featured":92,"template":684},"automating-container-image-migration-from-amazon-ecr-to-gitlab","content:de-de:blog:automating-container-image-migration-from-amazon-ecr-to-gitlab.yml","Automating Container Image Migration From Amazon Ecr To Gitlab","de-de/blog/automating-container-image-migration-from-amazon-ecr-to-gitlab.yml","de-de/blog/automating-container-image-migration-from-amazon-ecr-to-gitlab",{"_path":918,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":919,"content":925,"config":932,"_id":934,"_type":16,"title":935,"_source":17,"_file":936,"_stem":937,"_extension":20},"/de-de/blog/what-is-an-ide",{"ogTitle":920,"schema":921,"ogImage":922,"ogDescription":923,"ogSiteName":836,"noIndex":6,"ogType":861,"ogUrl":924,"title":920,"canonicalUrls":924,"description":923},"IDE: Integrierte Entwicklungsumgebung einfach erklärt ","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Was ist eine integrierte Entwicklungsumgebung (IDE)?\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Germany Team\"}],\n        \"datePublished\": \"2024-11-13\",\n      }","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659768/Blog/Hero%20Images/AdobeStock_271529563.jpg","Wir zeigen dir, was eine integrierte Entwicklungsumgebung (IDE) ist. ✓ Definition ✓ Unterschiede ✓ Komponenten ✓ Auswahl ➤ Jetzt Leitfaden lesen!","https://about.gitlab.com/blog/what-is-an-ide",{"heroImage":922,"authors":926,"updatedDate":927,"date":928,"title":929,"tags":930,"description":931,"category":14},[865],"2025-05-14","2024-11-13","Was ist eine integrierte Entwicklungsumgebung (IDE)?",[909,747],"Der ultimative Guide: Alles, was du über Integrierte Entwicklungsumgebungen wissen musst.",{"slug":933,"featured":6,"template":684},"what-is-an-ide","content:de-de:blog:what-is-an-ide.yml","What Is An Ide","de-de/blog/what-is-an-ide.yml","de-de/blog/what-is-an-ide",{"_path":939,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":940,"content":946,"config":954,"_id":956,"_type":16,"title":957,"_source":17,"_file":958,"_stem":959,"_extension":20},"/de-de/blog/using-child-pipelines-to-continuously-deploy-to-five-environments",{"title":941,"description":942,"ogTitle":941,"ogDescription":942,"noIndex":6,"ogImage":943,"ogUrl":944,"ogSiteName":836,"ogType":861,"canonicalUrls":944,"schema":945},"Kontinuierliche Bereitstellung in fünf Umgebungen mithilfe von untergeordneten Pipelines","Erfahre, wie du die kontinuierliche Bereitstellung in verschiedenen Umgebungen – darunter temporäre, sofort einsatzbereite Sandboxes – mit einem minimalistischen GitLab-Workflow verwalten kannst.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097012/Blog/Hero%20Images/Blog/Hero%20Images/AdobeStock_397632156_3Ldy1urjMStQCl4qnOBvE0_1750097011626.jpg","https://about.gitlab.com/blog/using-child-pipelines-to-continuously-deploy-to-five-environments","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Kontinuierliche Bereitstellung in fünf Umgebungen mithilfe von untergeordneten Pipelines\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Olivier Dupré\"}],\n        \"datePublished\": \"2024-09-26\",\n      }",{"title":941,"description":942,"authors":947,"heroImage":943,"date":949,"category":14,"tags":950,"updatedDate":953},[948],"Olivier Dupré","2024-09-26",[110,951,952,908,682],"CI","CD","2024-11-05",{"slug":955,"featured":6,"template":684},"using-child-pipelines-to-continuously-deploy-to-five-environments","content:de-de:blog:using-child-pipelines-to-continuously-deploy-to-five-environments.yml","Using Child Pipelines To Continuously Deploy To Five Environments","de-de/blog/using-child-pipelines-to-continuously-deploy-to-five-environments.yml","de-de/blog/using-child-pipelines-to-continuously-deploy-to-five-environments",{"_path":961,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":962,"content":968,"config":974,"_id":976,"_type":16,"title":977,"_source":17,"_file":978,"_stem":979,"_extension":20},"/de-de/blog/building-a-gitlab-ci-cd-pipeline-for-a-monorepo-the-easy-way",{"title":963,"description":964,"ogTitle":963,"ogDescription":964,"noIndex":6,"ogImage":965,"ogUrl":966,"ogSiteName":836,"ogType":861,"canonicalUrls":966,"schema":967},"Einfaches Erstellen einer GitLab-CI/CD-Pipeline für ein Monorepo","Erfahre, wie du eine GitLab-CI/CD-Pipeline für ein Monorepo erstellst, um mehrere Anwendungen in einem Repository zu hosten.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660151/Blog/Hero%20Images/blog-image-template-1800x945__26_.png","https://about.gitlab.com/blog/building-a-gitlab-ci-cd-pipeline-for-a-monorepo-the-easy-way","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Einfaches Erstellen einer GitLab-CI/CD-Pipeline für ein Monorepo\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Sam Morris\"}],\n        \"datePublished\": \"2024-07-30\",\n      }",{"title":963,"description":964,"authors":969,"heroImage":965,"date":971,"category":14,"tags":972,"updatedDate":973},[970],"Sam Morris","2024-07-30",[110,682],"2025-05-26",{"slug":975,"featured":6,"template":684},"building-a-gitlab-ci-cd-pipeline-for-a-monorepo-the-easy-way","content:de-de:blog:building-a-gitlab-ci-cd-pipeline-for-a-monorepo-the-easy-way.yml","Building A Gitlab Ci Cd Pipeline For A Monorepo The Easy Way","de-de/blog/building-a-gitlab-ci-cd-pipeline-for-a-monorepo-the-easy-way.yml","de-de/blog/building-a-gitlab-ci-cd-pipeline-for-a-monorepo-the-easy-way",{"_path":981,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":982,"content":988,"config":993,"_id":995,"_type":16,"title":996,"_source":17,"_file":997,"_stem":998,"_extension":20},"/de-de/blog/efficient-devsecops-workflows-hands-on-python-gitlab-api-automation",{"title":983,"description":984,"ogTitle":983,"ogDescription":984,"noIndex":6,"ogImage":985,"ogUrl":986,"ogSiteName":836,"ogType":861,"canonicalUrls":986,"schema":987},"Effiziente DevSecOps-Workflows: Praktische python-gitlab-API-Automatisierung","Die Python-GitLab-Bibliothek ist eine nützliche Basis für die GitLab-API. In diesem Tutorial erfährst du mehr über praktische Beispiele und bewährte Verfahren.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659883/Blog/Hero%20Images/post-cover-image.jpg","https://about.gitlab.com/blog/efficient-devsecops-workflows-hands-on-python-gitlab-api-automation","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Effiziente DevSecOps-Workflows: Praktische python-gitlab-API-Automatisierung\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Michael Friedrich\"}],\n        \"datePublished\": \"2023-02-01\",\n      }",{"title":983,"description":984,"authors":989,"heroImage":985,"date":990,"category":14,"tags":991,"updatedDate":992},[801],"2023-02-01",[234,682,726,908],"2025-05-16",{"slug":994,"featured":6,"template":684},"efficient-devsecops-workflows-hands-on-python-gitlab-api-automation","content:de-de:blog:efficient-devsecops-workflows-hands-on-python-gitlab-api-automation.yml","Efficient Devsecops Workflows Hands On Python Gitlab Api Automation","de-de/blog/efficient-devsecops-workflows-hands-on-python-gitlab-api-automation.yml","de-de/blog/efficient-devsecops-workflows-hands-on-python-gitlab-api-automation",{"_path":1000,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1001,"content":1007,"config":1013,"_id":1015,"_type":16,"title":1016,"_source":17,"_file":1017,"_stem":1018,"_extension":20},"/de-de/blog/observability-vs-monitoring-in-devops",{"title":1002,"description":1003,"ogTitle":1002,"ogDescription":1003,"noIndex":6,"ogImage":1004,"ogUrl":1005,"ogSiteName":836,"ogType":861,"canonicalUrls":1005,"schema":1006},"Observability vs. Monitoring in DevOps","Observability sammelt Daten, um Prozesse zu optimieren und Probleme zu beheben. Wir zeigen dir, wie das geht - und warum es dem Monitoring überlegen ist.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665484/Blog/Hero%20Images/monitoring-update-feature-image.jpg","https://about.gitlab.com/blog/observability-vs-monitoring-in-devops","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Observability vs. Monitoring in DevOps\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Mike Vanbuskirk\"}],\n        \"datePublished\": \"2022-06-14\",\n      }",{"title":1002,"description":1003,"authors":1008,"heroImage":1004,"date":1010,"category":14,"tags":1011,"updatedDate":1012},[1009],"Mike Vanbuskirk","2022-06-14",[724,681,703],"2024-10-16",{"slug":1014,"featured":6,"template":684},"observability-vs-monitoring-in-devops","content:de-de:blog:observability-vs-monitoring-in-devops.yml","Observability Vs Monitoring In Devops","de-de/blog/observability-vs-monitoring-in-devops.yml","de-de/blog/observability-vs-monitoring-in-devops",{"_path":1020,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1021,"content":1027,"config":1035,"_id":1037,"_type":16,"title":1038,"_source":17,"_file":1039,"_stem":1040,"_extension":20},"/de-de/blog/demystifying-ci-cd-variables",{"ogTitle":1022,"schema":1023,"ogImage":1024,"ogDescription":1025,"ogSiteName":836,"noIndex":6,"ogType":861,"ogUrl":1026,"title":1022,"canonicalUrls":1026,"description":1025},"GitLab Umgebungsvariablen einfach erklärt ","\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      }","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664679/Blog/Hero%20Images/blog-image-template-1800x945__24_.png","Wir zeigen dir, was sich hinter Umgebungsvariablen bei GitLab verbirgt. ✓ Definition ✓ Funktionsweise ✓ Typen ✓ Anwendung ➤ Jetzt Leitfaden lesen!","https://about.gitlab.com/blog/demystifying-ci-cd-variables",{"heroImage":1024,"authors":1028,"updatedDate":1030,"date":1031,"title":1022,"tags":1032,"description":1034,"category":14},[1029],"Veethika Mishra","2025-01-28","2021-04-09",[952,680,1033,951,110,682],"inside GitLab","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.",{"slug":1036,"featured":6,"template":684},"demystifying-ci-cd-variables","content:de-de:blog:demystifying-ci-cd-variables.yml","Demystifying Ci Cd Variables","de-de/blog/demystifying-ci-cd-variables.yml","de-de/blog/demystifying-ci-cd-variables",{"_path":1042,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1043,"content":1049,"config":1055,"_id":1057,"_type":16,"title":1058,"_source":17,"_file":1059,"_stem":1060,"_extension":20},"/de-de/blog/ci-deployment-and-environments",{"title":1044,"description":1045,"ogTitle":1044,"ogDescription":1045,"noIndex":6,"ogImage":1046,"ogUrl":1047,"ogSiteName":836,"ogType":861,"canonicalUrls":1047,"schema":1048},"Deployment mit GitLab CI an verschiedene Umgebungen: So funktioniert es","Erfahre, wie du GitLab CI für automatische Deployments in mehrere Umgebungen einrichtest, inklusive AWS S3-Integration und sicherer Variablenverwaltung.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662033/Blog/Hero%20Images/intro.jpg","https://about.gitlab.com/blog/ci-deployment-and-environments","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Deployment mit GitLab CI an verschiedene Umgebungen: So funktioniert es\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Ivan Nemytchenko\"},{\"@type\":\"Person\",\"name\":\"Cesar Saavedra\"}],\n        \"datePublished\": \"2021-02-05\",\n      }",{"title":1044,"description":1045,"authors":1050,"heroImage":1046,"date":1053,"category":14,"tags":1054,"updatedDate":992},[1051,1052],"Ivan Nemytchenko","Cesar Saavedra","2021-02-05",[951,952,682],{"slug":1056,"featured":6,"template":684},"ci-deployment-and-environments","content:de-de:blog:ci-deployment-and-environments.yml","Ci Deployment And Environments","de-de/blog/ci-deployment-and-environments.yml","de-de/blog/ci-deployment-and-environments",{"_path":1062,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1063,"content":1069,"config":1077,"_id":1079,"_type":16,"title":1080,"_source":17,"_file":1081,"_stem":1082,"_extension":20},"/de-de/blog/we-need-to-talk-no-proxy",{"title":1064,"description":1065,"ogTitle":1064,"ogDescription":1065,"noIndex":6,"ogImage":1066,"ogUrl":1067,"ogSiteName":836,"ogType":861,"canonicalUrls":1067,"schema":1068},"Kann NO_PROXY standardisiert werden?","Erfahre, wie GitLab ein Problem gelöst hat, das durch die Unterschiede der\nVariablen, die nicht von allen Webclients unterstützt werden, entstanden\nist.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659507/Blog/Hero%20Images/AdobeStock_623844718.jpg","https://about.gitlab.com/blog/we-need-to-talk-no-proxy","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Kann NO_PROXY standardisiert werden?\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Stan Hu\"}],\n        \"datePublished\": \"2021-01-27\",\n      }",{"title":1064,"description":1065,"authors":1070,"heroImage":1066,"date":1071,"category":14,"tags":1072,"updatedDate":1076},[818],"2021-01-27",[270,1073,1074,1075],"careers","user stories","startups","2024-10-09",{"slug":1078,"featured":6,"template":684},"we-need-to-talk-no-proxy","content:de-de:blog:we-need-to-talk-no-proxy.yml","We Need To Talk No Proxy","de-de/blog/we-need-to-talk-no-proxy.yml","de-de/blog/we-need-to-talk-no-proxy",{"_path":1084,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1085,"content":1091,"config":1096,"_id":1098,"_type":16,"title":1099,"_source":17,"_file":1100,"_stem":1101,"_extension":20},"/de-de/blog/basics-of-gitlab-ci-updated",{"title":1086,"description":1087,"ogTitle":1086,"ogDescription":1087,"noIndex":6,"ogImage":1088,"ogUrl":1089,"ogSiteName":836,"ogType":861,"canonicalUrls":1089,"schema":1090},"Grundlagen der GitLab-CI-Pipeline: Aufgaben sequenziell parallel oder ohne Reihenfolge ausführen","Neu in der Continuous Integration? Erfahre, wie du deine erste CI-Pipeline mit GitLab erstellst.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662061/Blog/Hero%20Images/cicdcover.png","https://about.gitlab.com/blog/basics-of-gitlab-ci-updated","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Grundlagen der GitLab-CI-Pipeline: Aufgaben sequenziell parallel oder ohne Reihenfolge ausführen\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Itzik Gan Baruch\"}],\n        \"datePublished\": \"2020-12-10\",\n      }",{"title":1086,"description":1087,"authors":1092,"heroImage":1088,"date":1094,"category":14,"tags":1095,"updatedDate":992},[1093],"Itzik Gan Baruch","2020-12-10",[951,682],{"slug":1097,"featured":6,"template":684},"basics-of-gitlab-ci-updated","content:de-de:blog:basics-of-gitlab-ci-updated.yml","Basics Of Gitlab Ci Updated","de-de/blog/basics-of-gitlab-ci-updated.yml","de-de/blog/basics-of-gitlab-ci-updated",{"_path":1103,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1104,"content":1110,"config":1116,"_id":1118,"_type":16,"title":1119,"_source":17,"_file":1120,"_stem":1121,"_extension":20},"/de-de/blog/keep-git-history-clean-with-interactive-rebase",{"title":1105,"description":1106,"ogTitle":1105,"ogDescription":1106,"noIndex":6,"ogImage":1107,"ogUrl":1108,"ogSiteName":836,"ogType":861,"canonicalUrls":1108,"schema":1109},"Git-Historie mit Interactive Rebase bereinigen","Erfahre, was Git Rebase ist und wie du damit in ein paar Schritten eine Git-Historie bereinigen kannst.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662593/Blog/Hero%20Images/title-image.png","https://about.gitlab.com/blog/keep-git-history-clean-with-interactive-rebase","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Git-Historie mit Interactive Rebase bereinigen\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Tobias Günther\"}],\n        \"datePublished\": \"2020-11-23\",\n      }",{"title":1105,"description":1106,"authors":1111,"heroImage":1107,"date":1113,"category":14,"tags":1114,"updatedDate":1115},[1112],"Tobias Günther","2020-11-23",[702,682],"2024-12-18",{"slug":1117,"featured":6,"template":684},"keep-git-history-clean-with-interactive-rebase","content:de-de:blog:keep-git-history-clean-with-interactive-rebase.yml","Keep Git History Clean With Interactive Rebase","de-de/blog/keep-git-history-clean-with-interactive-rebase.yml","de-de/blog/keep-git-history-clean-with-interactive-rebase",{"_path":1123,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1124,"content":1130,"config":1139,"_id":1141,"_type":16,"title":1142,"_source":17,"_file":1143,"_stem":1144,"_extension":20},"/de-de/blog/using-ansible-and-gitlab-as-infrastructure-for-code",{"ogTitle":1125,"schema":1126,"ogImage":1127,"ogDescription":1128,"ogSiteName":836,"noIndex":6,"ogType":861,"ogUrl":1129,"title":1125,"canonicalUrls":1129,"description":1128},"Konfigurationsmanagement mit GitLab und Ansible | Ein Leitfaden","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Konfigurationsmanagement mit GitLab und Ansible\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Brad Downey\"},{\"@type\":\"Person\",\"name\":\"Sara Kassabian\"}],\n        \"datePublished\": \"2019-07-01\",\n      }","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665322/Blog/Hero%20Images/gitlab-ansible-cover.png","Wir zeigen dir, wie das Konfigurationsmanagement mit GitLab und Ansible funktioniert! ✓ Definition ✓ Einstellungen ✓ Anleitung ✓ Demo ➤Jetzt Tutorial lesen!","https://about.gitlab.com/blog/using-ansible-and-gitlab-as-infrastructure-for-code",{"title":1131,"description":1132,"authors":1133,"heroImage":1127,"date":1136,"category":14,"tags":1137},"Konfigurationsmanagement mit GitLab und Ansible","Entdecke die beeindruckende Leistungsfähigkeit von GitLab CI, wenn es darum geht, Ansible-Playbooks im Rahmen von Infrastructure as Code umzusetzen.",[1134,1135],"Brad Downey","Sara Kassabian","2019-07-01",[1138,110],"demo",{"slug":1140,"featured":6,"template":684},"using-ansible-and-gitlab-as-infrastructure-for-code","content:de-de:blog:using-ansible-and-gitlab-as-infrastructure-for-code.yml","Using Ansible And Gitlab As Infrastructure For Code","de-de/blog/using-ansible-and-gitlab-as-infrastructure-for-code.yml","de-de/blog/using-ansible-and-gitlab-as-infrastructure-for-code",{"_path":1146,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1147,"content":1153,"config":1160,"_id":1162,"_type":16,"title":1163,"_source":17,"_file":1164,"_stem":1165,"_extension":20},"/de-de/blog/keeping-git-commit-history-clean",{"title":1148,"description":1149,"ogTitle":1148,"ogDescription":1149,"noIndex":6,"ogImage":1150,"ogUrl":1151,"ogSiteName":836,"ogType":861,"canonicalUrls":1151,"schema":1152},"4 Situationen, in denen sich eine aufgeräumte Git-Commit-Historie lohnt ","Erfahre, warum eine saubere Git-Commit-Historie die Nachvollziehbarkeit verbessert, Fehler behebt und die Codequalität steigert.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659457/Blog/Hero%20Images/keep-git-commit-history-clean.jpg","https://about.gitlab.com/blog/keeping-git-commit-history-clean","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"4 Situationen, in denen sich eine aufgeräumte Git-Commit-Historie lohnt \",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Kushal Pandya\"}],\n        \"datePublished\": \"2018-06-07\",\n      }",{"title":1148,"description":1149,"authors":1154,"heroImage":1150,"date":1156,"category":14,"tags":1157,"updatedDate":1159},[1155],"Kushal Pandya","2018-06-07",[702,1158],"workflow","2024-10-10",{"slug":1161,"featured":6,"template":684},"keeping-git-commit-history-clean","content:de-de:blog:keeping-git-commit-history-clean.yml","Keeping Git Commit History Clean","de-de/blog/keeping-git-commit-history-clean.yml","de-de/blog/keeping-git-commit-history-clean",{"_path":1167,"_dir":247,"_draft":6,"_partial":6,"_locale":7,"seo":1168,"content":1174,"config":1179,"_id":1181,"_type":16,"title":1182,"_source":17,"_file":1183,"_stem":1184,"_extension":20},"/de-de/blog/gitlab-container-registry",{"title":1169,"description":1170,"ogTitle":1169,"ogDescription":1170,"noIndex":6,"ogImage":1171,"ogUrl":1172,"ogSiteName":836,"ogType":861,"canonicalUrls":1172,"schema":1173},"Was ist das Gitlab Container Registry?"," Die auf Open Source basierende GitLab Container Registry ist nicht nur eine eigenständige Registry, sondern vollständig in GitLab integriert.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665223/Blog/Hero%20Images/containers.jpg","https://about.gitlab.com/blog/gitlab-container-registry","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Was ist das Gitlab Container Registry?\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Mark Pundsack\"}],\n        \"datePublished\": \"2016-05-23\",\n      }",{"title":1169,"description":1170,"authors":1175,"heroImage":1171,"date":1177,"category":14,"updatedDate":1178},[1176],"Mark Pundsack","2016-05-23","2024-12-17",{"slug":1180,"featured":6,"template":684},"gitlab-container-registry","content:de-de:blog:gitlab-container-registry.yml","Gitlab Container Registry","de-de/blog/gitlab-container-registry.yml","de-de/blog/gitlab-container-registry",{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":1186,"content":1187,"config":1188,"_id":15,"_type":16,"title":9,"_source":17,"_file":18,"_stem":19,"_extension":20},{"title":9,"description":10},{"name":9},{"template":13,"slug":14,"hide":6},1761814397541]