[{"data":1,"prerenderedAt":904},["ShallowReactive",2],{"/blog/from-monolith-to-microservices-how-to-leverage-aws-with-gitlab":3,"navigation-en-us":120,"banner-en-us":546,"footer-en-us":556,"blog-post-authors-en-us-Brein Matturro":801,"blog-related-posts-en-us-from-monolith-to-microservices-how-to-leverage-aws-with-gitlab":815,"blog-promotions-en-us":840,"next-steps-en-us":894},{"id":4,"title":5,"authors":6,"body":8,"category":98,"date":99,"description":100,"extension":101,"externalUrl":102,"faq":102,"featured":103,"heroImage":104,"meta":105,"navigation":106,"path":107,"seo":108,"slug":112,"stem":113,"tags":114,"template":118,"updatedDate":102,"__hash__":119},"blogPosts/en-us/blog/from-monolith-to-microservices-how-to-leverage-aws-with-gitlab.md","From monolith to microservices: How to leverage AWS with GitLab",[7],"Brein Matturro",{"type":9,"value":10,"toc":92},"minimark",[11,22,31,36,49,52,56,59,62,70,78],[12,13,14,15,21],"p",{},"Ask Media Group operates over 30 websites and provides enriched search results, articles, galleries, and shopping sites to over 100 million unique visitors each month. About two years ago, ",[16,17,20],"a",{"href":18,"rel":19},"https://www.askmediagroup.com/",[],"Ask Media"," was looking for ways to grow the business, draw advertisers, and expand its audience. Routine tasks like onboarding developers or releasing software took too long. The monolithic system that was in place had limited capabilities and added financial burdens for services that went unused.",[12,23,24,25,30],{},"Chenglim Ear, principal software engineer at Ask Media, recently sat down with ",[16,26,29],{"href":27,"rel":28},"https://www.linkedin.com/in/startuptrev",[],"Trevor Hansen",", solutions architect at AWS, to discuss how adopting GitLab empowered developers to improve the customer experience, release software quicker, and leverage AWS cloud services.",[32,33,35],"h2",{"id":34},"building-microservices-from-monoliths","Building microservices from monoliths",[12,37,38,39,43,44,48],{},"Ask Media was looking to move away from a monolithic system to ",[16,40,42],{"href":41},"/topics/microservices/","microservices"," in order to modernize workflow and improve the overall business process. “We wanted to move over to microservices. We wanted to ",[16,45,47],{"href":46},"/solutions/kubernetes/","leverage Kubernetes",". It was a new container world that was shaping. When we looked at GitLab, it was very complete in providing what we needed to be able to build images, to run on containers,” according to Chenglim. “That was a very big deciding factor. GitLab had everything that we needed.”",[12,50,51],{},"Developers can now break services into multiples and develop them independently, own the code, and have full visibility prior to deployment. “We're making the hidden logic transparent and we enable the parts of the logic to be independently developed in parallel. So you can have developers all working on their own, with different skillsets,” Chenglim says.",[32,53,55],{"id":54},"containers-cost-and-scalability","Containers, cost, and scalability",[12,57,58],{},"“We needed a system that could handle change. When we look at what we did to speed up development, make it simple and transparent, and control the cost, we see a paradigm shift. GitLab gave us push-button releases. Docker and Kubernetes enabled us to switch to a microservices architecture and AWS enabled auto scaling,” says Chenglim. “On Amazon, we started building Kubernetes clusters and GitLab became our command and control interface.”",[12,60,61],{},"Ask Media was looking for a tool that could scale and grow as needed. Cost, speed, and functionality are the tenets that AWS focuses on providing to its customers, according to Hansen. AWS works closely with Ask Media to ensure that the containers in place offer the scalability, flexibility, and timeliness they need.",[12,63,64,65,69],{},"With ",[16,66,68],{"href":67},"/partners/technology-partners/aws/","GitLab and AWS",", Ask Media developers built out a platform that enables the knowledge from all members of the teams. “With AWS, we wanted a product that was fairly complete and mature. AWS has a lot of history and lots of services. We definitely wanted to be able to leverage those services and to build on a platform that was a solid,” Chenglim says. “We set off to build Kubernetes clusters, right on EC2 instances. We continue to look at opportunities to leverage the resources available through AWS.”",[12,71,72,73,77],{},"To learn more about how Ask Media made the transition to cloud native, check out the full ",[16,74,76],{"href":75},"/events/","webcast",".",[12,79,80,81,86,87],{},"Cover image by ",[16,82,85],{"href":83,"rel":84},"https://unsplash.com/@ericmuhr?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText",[],"Eric Muhr"," on ",[16,88,91],{"href":89,"rel":90},"https://unsplash.com",[],"Unsplash",{"title":93,"searchDepth":94,"depth":94,"links":95},"",2,[96,97],{"id":34,"depth":94,"text":35},{"id":54,"depth":94,"text":55},"open-source","2020-03-24","GitLab recently spent time with Ask Media Group and AWS to discuss how modernizing from self-managed to a cloud native system empowers developers.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679645/Blog/Hero%20Images/askmediablog-.jpg",{},true,"/en-us/blog/from-monolith-to-microservices-how-to-leverage-aws-with-gitlab",{"title":5,"description":100,"ogTitle":5,"ogDescription":100,"noIndex":103,"ogImage":104,"ogUrl":109,"ogSiteName":110,"ogType":111,"canonicalUrls":109},"https://about.gitlab.com/blog/from-monolith-to-microservices-how-to-leverage-aws-with-gitlab","https://about.gitlab.com","article","from-monolith-to-microservices-how-to-leverage-aws-with-gitlab","en-us/blog/from-monolith-to-microservices-how-to-leverage-aws-with-gitlab",[76,115,116,117],"user stories","kubernetes","UI","BlogPost","-KnDeKkXgY6FsK4oWuOj2CGzYR1y357QHXk3Jd7Wr9E",{"logo":121,"freeTrial":126,"sales":131,"login":136,"items":141,"search":467,"minimal":497,"duo":516,"switchNav":525,"pricingDeployment":536},{"config":122},{"href":123,"dataGaName":124,"dataGaLocation":125},"/","gitlab logo","header",{"text":127,"config":128},"Get free trial",{"href":129,"dataGaName":130,"dataGaLocation":125},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":132,"config":133},"Request a demo",{"href":134,"dataGaName":135,"dataGaLocation":125},"/sales/?contact-topic=request-demo","sales",{"text":137,"config":138},"Sign in",{"href":139,"dataGaName":140,"dataGaLocation":125},"https://gitlab.com/users/sign_in/","sign in",[142,171,271,276,389,445],{"text":143,"config":144,"menu":146},"Platform",{"dataNavLevelOne":145},"platform",{"type":147,"columns":148},"cards",[149,155,163],{"title":143,"description":150,"link":151},"The intelligent orchestration platform for DevSecOps",{"text":152,"config":153},"Explore our Platform",{"href":154,"dataGaName":145,"dataGaLocation":125},"/platform/",{"title":156,"description":157,"link":158},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":159,"config":160},"Meet GitLab Duo",{"href":161,"dataGaName":162,"dataGaLocation":125},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":164,"description":165,"link":166},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":167,"config":168},"Learn more",{"href":169,"dataGaName":170,"dataGaLocation":125},"/why-gitlab/","why gitlab",{"text":172,"left":106,"config":173,"menu":175},"Product",{"dataNavLevelOne":174},"solutions",{"type":176,"link":177,"columns":181,"feature":250},"lists",{"text":178,"config":179},"View all Solutions",{"href":180,"dataGaName":174,"dataGaLocation":125},"/solutions/",[182,206,229],{"title":183,"description":184,"link":185,"items":190},"Automation","CI/CD and automation to accelerate deployment",{"config":186},{"icon":187,"href":188,"dataGaName":189,"dataGaLocation":125},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[191,195,198,202],{"text":192,"config":193},"CI/CD",{"href":194,"dataGaLocation":125,"dataGaName":192},"/solutions/continuous-integration/",{"text":156,"config":196},{"href":161,"dataGaLocation":125,"dataGaName":197},"gitlab duo agent platform - product menu",{"text":199,"config":200},"Source Code Management",{"href":201,"dataGaLocation":125,"dataGaName":199},"/solutions/source-code-management/",{"text":203,"config":204},"Automated Software Delivery",{"href":188,"dataGaLocation":125,"dataGaName":205},"Automated software delivery",{"title":207,"description":208,"link":209,"items":214},"Security","Deliver code faster without compromising security",{"config":210},{"href":211,"dataGaName":212,"dataGaLocation":125,"icon":213},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[215,219,224],{"text":216,"config":217},"Application Security Testing",{"href":211,"dataGaName":218,"dataGaLocation":125},"Application security testing",{"text":220,"config":221},"Software Supply Chain Security",{"href":222,"dataGaLocation":125,"dataGaName":223},"/solutions/supply-chain/","Software supply chain security",{"text":225,"config":226},"Software Compliance",{"href":227,"dataGaName":228,"dataGaLocation":125},"/solutions/software-compliance/","software compliance",{"title":230,"link":231,"items":236},"Measurement",{"config":232},{"icon":233,"href":234,"dataGaName":235,"dataGaLocation":125},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[237,241,245],{"text":238,"config":239},"Visibility & Measurement",{"href":234,"dataGaLocation":125,"dataGaName":240},"Visibility and Measurement",{"text":242,"config":243},"Value Stream Management",{"href":244,"dataGaLocation":125,"dataGaName":242},"/solutions/value-stream-management/",{"text":246,"config":247},"Analytics & Insights",{"href":248,"dataGaLocation":125,"dataGaName":249},"/solutions/analytics-and-insights/","Analytics and insights",{"title":251,"type":176,"items":252},"GitLab for",[253,259,265],{"text":254,"config":255},"Enterprise",{"icon":256,"href":257,"dataGaLocation":125,"dataGaName":258},"Building","/enterprise/","enterprise",{"text":260,"config":261},"Small Business",{"icon":262,"href":263,"dataGaLocation":125,"dataGaName":264},"Work","/small-business/","small business",{"text":266,"config":267},"Public Sector",{"icon":268,"href":269,"dataGaLocation":125,"dataGaName":270},"Organization","/solutions/public-sector/","public sector",{"text":272,"config":273},"Pricing",{"href":274,"dataGaName":275,"dataGaLocation":125,"dataNavLevelOne":275},"/pricing/","pricing",{"text":277,"config":278,"menu":280},"Resources",{"dataNavLevelOne":279},"resources",{"type":176,"link":281,"columns":285,"feature":378},{"text":282,"config":283},"View all resources",{"href":284,"dataGaName":279,"dataGaLocation":125},"/resources/",[286,319,346],{"title":287,"items":288},"Getting started",[289,294,299,304,309,314],{"text":290,"config":291},"Install",{"href":292,"dataGaName":293,"dataGaLocation":125},"/install/","install",{"text":295,"config":296},"Quick start guides",{"href":297,"dataGaName":298,"dataGaLocation":125},"/get-started/","quick setup checklists",{"text":300,"config":301},"Learn",{"href":302,"dataGaLocation":125,"dataGaName":303},"https://university.gitlab.com/","learn",{"text":305,"config":306},"Product documentation",{"href":307,"dataGaName":308,"dataGaLocation":125},"https://docs.gitlab.com/","product documentation",{"text":310,"config":311},"Best practice videos",{"href":312,"dataGaName":313,"dataGaLocation":125},"/getting-started-videos/","best practice videos",{"text":315,"config":316},"Integrations",{"href":317,"dataGaName":318,"dataGaLocation":125},"/integrations/","integrations",{"title":320,"items":321},"Discover",[322,327,332,337,341],{"text":323,"config":324},"Customer success stories",{"href":325,"dataGaName":326,"dataGaLocation":125},"/customers/","customer success stories",{"text":328,"config":329},"Blog",{"href":330,"dataGaName":331,"dataGaLocation":125},"/blog/","blog",{"text":333,"config":334},"Demo Hub",{"href":335,"dataGaName":336,"dataGaLocation":125},"/demo-hub/","demo hub",{"text":338,"config":339},"The Source",{"href":340,"dataGaName":331,"dataGaLocation":125},"/the-source/",{"text":342,"config":343},"Remote",{"href":344,"dataGaName":345,"dataGaLocation":125},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":347,"items":348},"Connect",[349,354,359,364,369,373],{"text":350,"config":351},"GitLab Services",{"href":352,"dataGaName":353,"dataGaLocation":125},"/services/","services",{"text":355,"config":356},"Contribute",{"href":357,"dataGaName":358,"dataGaLocation":125},"https://contributors.gitlab.com","contribute",{"text":360,"config":361},"Community",{"href":362,"dataGaName":363,"dataGaLocation":125},"/community/","community",{"text":365,"config":366},"Forum",{"href":367,"dataGaName":368,"dataGaLocation":125},"https://forum.gitlab.com/","forum",{"text":370,"config":371},"Events",{"href":75,"dataGaName":372,"dataGaLocation":125},"events",{"text":374,"config":375},"Partners",{"href":376,"dataGaName":377,"dataGaLocation":125},"/partners/","partners",{"config":379,"title":382,"text":383,"link":384},{"background":380,"textColor":381},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","What’s new in GitLab","Stay updated with our latest features and improvements.",{"text":385,"config":386},"Read the latest",{"href":387,"dataGaName":388,"dataGaLocation":125},"/whats-new/","whats new",{"text":390,"config":391,"menu":393},"Company",{"dataNavLevelOne":392},"company",{"type":176,"columns":394},[395],{"items":396},[397,402,408,410,415,420,425,430,435,440],{"text":398,"config":399},"About",{"href":400,"dataGaName":401,"dataGaLocation":125},"/company/","about",{"text":403,"config":404,"footerGa":407},"Jobs",{"href":405,"dataGaName":406,"dataGaLocation":125},"/jobs/","jobs",{"dataGaName":406},{"text":370,"config":409},{"href":75,"dataGaName":372,"dataGaLocation":125},{"text":411,"config":412},"Leadership",{"href":413,"dataGaName":414,"dataGaLocation":125},"/company/team/e-group/","leadership",{"text":416,"config":417},"Handbook",{"href":418,"dataGaName":419,"dataGaLocation":125},"https://handbook.gitlab.com/","handbook",{"text":421,"config":422},"Investor relations",{"href":423,"dataGaName":424,"dataGaLocation":125},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":426,"config":427},"Trust Center",{"href":428,"dataGaName":429,"dataGaLocation":125},"/security/","trust center",{"text":431,"config":432},"AI Transparency Center",{"href":433,"dataGaName":434,"dataGaLocation":125},"/ai-transparency-center/","ai transparency center",{"text":436,"config":437},"Newsletter",{"href":438,"dataGaName":439,"dataGaLocation":125},"/company/contact/#contact-forms","newsletter",{"text":441,"config":442},"Press",{"href":443,"dataGaName":444,"dataGaLocation":125},"/press/","press",{"text":446,"config":447,"menu":448},"Contact us",{"dataNavLevelOne":392},{"type":176,"columns":449},[450],{"items":451},[452,457,462],{"text":453,"config":454},"Talk to sales",{"href":455,"dataGaName":456,"dataGaLocation":125},"/sales/","talk to sales",{"text":458,"config":459},"Support portal",{"href":460,"dataGaName":461,"dataGaLocation":125},"https://support.gitlab.com/hc/en-us","support portal",{"text":463,"config":464},"Customer portal",{"href":465,"dataGaName":466,"dataGaLocation":125},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":468,"login":469,"suggestions":476},"Close",{"text":470,"link":471},"To search repositories and projects, login to",{"text":472,"config":473},"gitlab.com",{"href":139,"dataGaName":474,"dataGaLocation":475},"search login","search",{"text":477,"default":478},"Suggestions",[479,481,485,487,490,494],{"text":156,"config":480},{"href":161,"dataGaName":156,"dataGaLocation":475},{"text":482,"config":483},"Code Suggestions (AI)",{"href":484,"dataGaName":482,"dataGaLocation":475},"/solutions/code-suggestions/",{"text":192,"config":486},{"href":194,"dataGaName":192,"dataGaLocation":475},{"text":488,"config":489},"GitLab on AWS",{"href":67,"dataGaName":488,"dataGaLocation":475},{"text":491,"config":492},"GitLab on Google Cloud",{"href":493,"dataGaName":491,"dataGaLocation":475},"/partners/technology-partners/google-cloud-platform/",{"text":495,"config":496},"Why GitLab?",{"href":169,"dataGaName":495,"dataGaLocation":475},{"freeTrial":498,"mobileIcon":503,"desktopIcon":508,"secondaryButton":511},{"text":499,"config":500},"Start free trial",{"href":501,"dataGaName":130,"dataGaLocation":502},"https://gitlab.com/-/trials/new/","nav",{"altText":504,"config":505},"Gitlab Icon",{"src":506,"dataGaName":507,"dataGaLocation":502},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":504,"config":509},{"src":510,"dataGaName":507,"dataGaLocation":502},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":512,"config":513},"Get Started",{"href":514,"dataGaName":515,"dataGaLocation":502},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":517,"mobileIcon":521,"desktopIcon":523},{"text":518,"config":519},"Learn more about GitLab Duo",{"href":161,"dataGaName":520,"dataGaLocation":502},"gitlab duo",{"altText":504,"config":522},{"src":506,"dataGaName":507,"dataGaLocation":502},{"altText":504,"config":524},{"src":510,"dataGaName":507,"dataGaLocation":502},{"button":526,"mobileIcon":531,"desktopIcon":533},{"text":527,"config":528},"/switch",{"href":529,"dataGaName":530,"dataGaLocation":502},"#contact","switch",{"altText":504,"config":532},{"src":506,"dataGaName":507,"dataGaLocation":502},{"altText":504,"config":534},{"src":535,"dataGaName":507,"dataGaLocation":502},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":537,"mobileIcon":542,"desktopIcon":544},{"text":538,"config":539},"Back to pricing",{"href":274,"dataGaName":540,"dataGaLocation":502,"icon":541},"back to pricing","GoBack",{"altText":504,"config":543},{"src":506,"dataGaName":507,"dataGaLocation":502},{"altText":504,"config":545},{"src":510,"dataGaName":507,"dataGaLocation":502},{"title":547,"titleMobile":548,"button":549,"config":554},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":167,"config":550},{"href":551,"dataGaName":552,"dataGaLocation":553},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":555,"disabled":103},"release",{"data":557},{"text":558,"source":559,"edit":565,"contribute":570,"config":575,"items":580,"minimal":790},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":560,"config":561},"View page source",{"href":562,"dataGaName":563,"dataGaLocation":564},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":566,"config":567},"Edit this page",{"href":568,"dataGaName":569,"dataGaLocation":564},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":571,"config":572},"Please contribute",{"href":573,"dataGaName":574,"dataGaLocation":564},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":576,"facebook":577,"youtube":578,"linkedin":579},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[581,628,682,726,758],{"title":272,"links":582,"subMenu":597},[583,587,592],{"text":584,"config":585},"View plans",{"href":274,"dataGaName":586,"dataGaLocation":564},"view plans",{"text":588,"config":589},"Why Premium?",{"href":590,"dataGaName":591,"dataGaLocation":564},"/pricing/premium/","why premium",{"text":593,"config":594},"Why Ultimate?",{"href":595,"dataGaName":596,"dataGaLocation":564},"/pricing/ultimate/","why ultimate",[598],{"title":599,"links":600},"Contact Us",[601,604,606,608,613,618,623],{"text":602,"config":603},"Contact sales",{"href":455,"dataGaName":135,"dataGaLocation":564},{"text":458,"config":605},{"href":460,"dataGaName":461,"dataGaLocation":564},{"text":463,"config":607},{"href":465,"dataGaName":466,"dataGaLocation":564},{"text":609,"config":610},"Status",{"href":611,"dataGaName":612,"dataGaLocation":564},"https://status.gitlab.com/","status",{"text":614,"config":615},"Terms of use",{"href":616,"dataGaName":617,"dataGaLocation":564},"/terms/","terms of use",{"text":619,"config":620},"Privacy statement",{"href":621,"dataGaName":622,"dataGaLocation":564},"/privacy/","privacy statement",{"text":624,"config":625},"Cookie preferences",{"dataGaName":626,"dataGaLocation":564,"id":627,"isOneTrustButton":106},"cookie preferences","ot-sdk-btn",{"title":172,"links":629,"subMenu":638},[630,634],{"text":631,"config":632},"DevSecOps platform",{"href":154,"dataGaName":633,"dataGaLocation":564},"devsecops platform",{"text":635,"config":636},"AI-Assisted Development",{"href":161,"dataGaName":637,"dataGaLocation":564},"ai-assisted development",[639],{"title":640,"links":641},"Topics",[642,647,652,657,662,667,672,677],{"text":643,"config":644},"CICD",{"href":645,"dataGaName":646,"dataGaLocation":564},"/topics/ci-cd/","cicd",{"text":648,"config":649},"GitOps",{"href":650,"dataGaName":651,"dataGaLocation":564},"/topics/gitops/","gitops",{"text":653,"config":654},"DevOps",{"href":655,"dataGaName":656,"dataGaLocation":564},"/topics/devops/","devops",{"text":658,"config":659},"Version Control",{"href":660,"dataGaName":661,"dataGaLocation":564},"/topics/version-control/","version control",{"text":663,"config":664},"DevSecOps",{"href":665,"dataGaName":666,"dataGaLocation":564},"/topics/devsecops/","devsecops",{"text":668,"config":669},"Cloud Native",{"href":670,"dataGaName":671,"dataGaLocation":564},"/topics/cloud-native/","cloud native",{"text":673,"config":674},"AI for Coding",{"href":675,"dataGaName":676,"dataGaLocation":564},"/topics/devops/ai-for-coding/","ai for coding",{"text":678,"config":679},"Agentic AI",{"href":680,"dataGaName":681,"dataGaLocation":564},"/topics/agentic-ai/","agentic ai",{"title":683,"links":684},"Solutions",[685,687,689,694,698,701,705,708,710,713,716,721],{"text":216,"config":686},{"href":211,"dataGaName":216,"dataGaLocation":564},{"text":205,"config":688},{"href":188,"dataGaName":189,"dataGaLocation":564},{"text":690,"config":691},"Agile development",{"href":692,"dataGaName":693,"dataGaLocation":564},"/solutions/agile-delivery/","agile delivery",{"text":695,"config":696},"SCM",{"href":201,"dataGaName":697,"dataGaLocation":564},"source code management",{"text":643,"config":699},{"href":194,"dataGaName":700,"dataGaLocation":564},"continuous integration & delivery",{"text":702,"config":703},"Value stream management",{"href":244,"dataGaName":704,"dataGaLocation":564},"value stream management",{"text":648,"config":706},{"href":707,"dataGaName":651,"dataGaLocation":564},"/solutions/gitops/",{"text":254,"config":709},{"href":257,"dataGaName":258,"dataGaLocation":564},{"text":711,"config":712},"Small business",{"href":263,"dataGaName":264,"dataGaLocation":564},{"text":714,"config":715},"Public sector",{"href":269,"dataGaName":270,"dataGaLocation":564},{"text":717,"config":718},"Education",{"href":719,"dataGaName":720,"dataGaLocation":564},"/solutions/education/","education",{"text":722,"config":723},"Financial services",{"href":724,"dataGaName":725,"dataGaLocation":564},"/solutions/finance/","financial services",{"title":277,"links":727},[728,730,732,734,737,739,742,744,746,748,750,752,754,756],{"text":290,"config":729},{"href":292,"dataGaName":293,"dataGaLocation":564},{"text":295,"config":731},{"href":297,"dataGaName":298,"dataGaLocation":564},{"text":300,"config":733},{"href":302,"dataGaName":303,"dataGaLocation":564},{"text":305,"config":735},{"href":307,"dataGaName":736,"dataGaLocation":564},"docs",{"text":328,"config":738},{"href":330,"dataGaName":331,"dataGaLocation":564},{"text":740,"config":741},"What's new",{"href":387,"dataGaName":388,"dataGaLocation":564},{"text":323,"config":743},{"href":325,"dataGaName":326,"dataGaLocation":564},{"text":342,"config":745},{"href":344,"dataGaName":345,"dataGaLocation":564},{"text":350,"config":747},{"href":352,"dataGaName":353,"dataGaLocation":564},{"text":355,"config":749},{"href":357,"dataGaName":358,"dataGaLocation":564},{"text":360,"config":751},{"href":362,"dataGaName":363,"dataGaLocation":564},{"text":365,"config":753},{"href":367,"dataGaName":368,"dataGaLocation":564},{"text":370,"config":755},{"href":75,"dataGaName":372,"dataGaLocation":564},{"text":374,"config":757},{"href":376,"dataGaName":377,"dataGaLocation":564},{"title":390,"links":759},[760,762,764,766,768,770,774,779,781,783,785],{"text":398,"config":761},{"href":400,"dataGaName":392,"dataGaLocation":564},{"text":403,"config":763},{"href":405,"dataGaName":406,"dataGaLocation":564},{"text":411,"config":765},{"href":413,"dataGaName":414,"dataGaLocation":564},{"text":416,"config":767},{"href":418,"dataGaName":419,"dataGaLocation":564},{"text":421,"config":769},{"href":423,"dataGaName":424,"dataGaLocation":564},{"text":771,"config":772},"Sustainability",{"href":773,"dataGaName":771,"dataGaLocation":564},"/sustainability/",{"text":775,"config":776},"Diversity, inclusion and belonging (DIB)",{"href":777,"dataGaName":778,"dataGaLocation":564},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":426,"config":780},{"href":428,"dataGaName":429,"dataGaLocation":564},{"text":436,"config":782},{"href":438,"dataGaName":439,"dataGaLocation":564},{"text":441,"config":784},{"href":443,"dataGaName":444,"dataGaLocation":564},{"text":786,"config":787},"Modern Slavery Transparency Statement",{"href":788,"dataGaName":789,"dataGaLocation":564},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":791},[792,795,798],{"text":793,"config":794},"Terms",{"href":616,"dataGaName":617,"dataGaLocation":564},{"text":796,"config":797},"Cookies",{"dataGaName":626,"dataGaLocation":564,"id":627,"isOneTrustButton":106},{"text":799,"config":800},"Privacy",{"href":621,"dataGaName":622,"dataGaLocation":564},[802],{"id":803,"title":7,"body":102,"config":804,"content":806,"description":102,"extension":809,"meta":810,"navigation":106,"path":811,"seo":812,"stem":813,"__hash__":814},"blogAuthors/en-us/blog/authors/brein-matturro.yml",{"template":805},"BlogAuthor",{"name":7,"config":807},{"headshot":93,"ctfId":808},"bmatturro","yml",{},"/en-us/blog/authors/brein-matturro",{},"en-us/blog/authors/brein-matturro","Cvc2rzfxZi3K-zsmRmHn65dn11RrXqpX29naponyZNc",[816,824,832],{"title":817,"description":818,"heroImage":819,"category":98,"date":820,"authors":821,"slug":823,"externalUrl":102},"What's new in Git 2.55.0?","Learn about the new features and changes in Git 2.55, including a new git-history(1) fixup command, an fsmonitor daemon for Linux, pushing to remote groups, and more.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782732487/ztwgrvlolpifo01vj8qc.png","2026-06-29",[822],"Toon Claes","whats-new-in-git-2-55-0",{"title":825,"description":826,"heroImage":827,"category":98,"date":828,"authors":829,"slug":831,"externalUrl":102},"GitLab AI Hackathon 2026: Meet the winners","Nearly 7,000 developers built 600+ AI agents and flows on GitLab Duo Agent Platform. Find out who won and what they created.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1776457632/llddiylsgwuze0u1rjks.png","2026-04-22",[830],"Nick Veenhof","gitlab-ai-hackathon-2026-meet-the-winners",{"title":833,"description":834,"heroImage":835,"category":98,"date":836,"authors":837,"slug":839,"externalUrl":102},"What’s new in Git 2.54.0?","Learn about release contributions, including new repository maintenance, a new command to edit commit history, a replacement for git-sizer(1), and more.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782734716/ztwgrvlolpifo01vj8qc.png","2026-04-20",[838],"Patrick Steinhardt","whats-new-in-git-2-54-0",{"promotions":841},[842,856,868,880],{"id":843,"categories":844,"header":846,"text":847,"button":848,"image":853},"ai-modernization",[845],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":849,"config":850},"Get your AI maturity score",{"href":851,"dataGaName":852,"dataGaLocation":331},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":854},{"src":855},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":857,"categories":858,"header":860,"text":847,"button":861,"image":865},"devops-modernization",[859,666],"product","Are you just managing tools or shipping innovation?",{"text":862,"config":863},"Get your DevOps maturity score",{"href":864,"dataGaName":852,"dataGaLocation":331},"/assessments/devops-modernization-assessment/",{"config":866},{"src":867},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":869,"categories":870,"header":872,"text":847,"button":873,"image":877},"security-modernization",[871],"security","Are you trading speed for security?",{"text":874,"config":875},"Get your security maturity score",{"href":876,"dataGaName":852,"dataGaLocation":331},"/assessments/security-modernization-assessment/",{"config":878},{"src":879},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":881,"paths":882,"header":885,"text":886,"button":887,"image":892},"github-azure-migration",[883,884],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Is your team ready for GitHub's Azure move?","GitHub is already rebuilding around Azure. Find out what it means for you.",{"text":888,"config":889},"See how GitLab compares to GitHub",{"href":890,"dataGaName":891,"dataGaLocation":331},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":893},{"src":867},{"header":895,"blurb":896,"button":897,"secondaryButton":902},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":898,"config":899},"Get your free trial",{"href":900,"dataGaName":130,"dataGaLocation":901},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":602,"config":903},{"href":455,"dataGaName":135,"dataGaLocation":901},1786803749553]