[{"data":1,"prerenderedAt":968},["ShallowReactive",2],{"/blog/devops-tool-landscape":3,"navigation-en-us":173,"banner-en-us":599,"footer-en-us":609,"blog-post-authors-en-us-Mahesh Kumar|Chrissie Buchanan":853,"blog-related-posts-en-us-devops-tool-landscape":879,"blog-promotions-en-us":904,"next-steps-en-us":958},{"id":4,"title":5,"authors":6,"body":9,"category":151,"date":152,"description":153,"extension":154,"externalUrl":155,"faq":155,"featured":156,"heroImage":157,"meta":158,"navigation":159,"path":160,"seo":161,"slug":165,"stem":166,"tags":167,"template":171,"updatedDate":155,"__hash__":172},"blogPosts/en-us/blog/devops-tool-landscape.md","The DevOps tool landscape",[7,8],"Mahesh Kumar","Chrissie Buchanan",{"type":10,"value":11,"toc":144},"minimark",[12,28,41,46,49,52,55,61,65,68,79,82,91,95,98,101,105,108,111,130],[13,14,15,16,22,23,27],"p",{},"One of the ",[17,18,21],"a",{"href":19,"rel":20},"https://handbook.gitlab.com/handbook/values/",[],"core values"," at GitLab is transparency, and it is in this spirit that we evaluate and articulate how GitLab fits into the competitive landscape. One of the ways we’ve demonstrated this transparency is by ",[17,24,26],{"href":25},"/why-gitlab/","listing other DevOps tools"," on our website and how they compare to functionality in GitLab. This approach is a little unorthodox but we believe this transparency not only helps teams make the right decisions, it also helps us identify where we can improve our product.",[13,29,30,31,35,36,40],{},"For any competitive comparison to be effective, it has to be fair, accurate, and easy to understand. Whether we’re comparing ",[17,32,34],{"href":33},"/blog/jenkins-one-year-later/","three versions of Jenkins"," to GitLab CI/CD, or comparing other ",[17,37,39],{"href":38},"/topics/devops/devops-tools-explained/","DevOps tools"," in the SDLC, we try to ensure these three key objectives of competitive comparisons are achieved.",[42,43,45],"h2",{"id":44},"staying-fair","Staying fair",[13,47,48],{},"One of the biggest challenges in competitive comparisons is staying fair and credible. The selection of competitive comparison criteria plays a significant role because it has to be comprehensive and not self-serving. Far too often vendors restrict competitive comparison criteria to what their product does well and avoid the gaps that might be in their products. At GitLab, we make a concerted effort to avoid this pitfall, and our culture of transparency keeps us honest in our assessment of where we excel and where we can do better.",[13,50,51],{},"The GitLab Maturity Framework articulates the stages, categories, and features that constitute the end-to-end DevOps lifecycle. The maturity framework shows where GitLab provides an elevated user experience and also outlines our planned roadmap for the future. Since this framework takes a long-term view of criteria/features that constitute various DevOps stages and categories, we use this framework as a guide for our competitive comparisons.",[13,53,54],{},"In our GitLab Maturity Framework, we have a few categories where we rank as one of the best-in-class, both with industry analysts and GitLab users: Source code management, code review, and continuous integration (CI). To see one of these comparisons, check out our Jenkins CI page where we outline features, pricing, and a comprehensive overview.",[13,56,57],{},[17,58,60],{"href":59},"/solutions/jenkins/","Jenkins vs. GitLab",[42,62,64],{"id":63},"keeping-it-accurate","Keeping it accurate",[13,66,67],{},"Having settled on criteria for evaluation, getting the data accurate is a major challenge. We have a structured information gathering process as laid out below:",[69,70,75],"pre",{"className":71,"code":73,"language":74},[72],"language-text","1. Website\n2. Documentation\n3. Demos\n4. Product install and usage\n5. Customer feedback\n","text",[76,77,73],"code",{"__ignoreMap":78},"",[13,80,81],{},"Sometimes we are unable to complete this process for all vendor products for several reasons. First is the lack of available information either on a vendor's website or documentation. Second, we may be unable to access their product to validate certain capabilities. Some vendors do not provide a free or easily accessible version of the product, while others may explicitly prohibit the use of their product for comparison purposes. In either case, we restrict our comparison to publicly available details.",[13,83,84,85,90],{},"The second challenge in ensuring accuracy is that vendors don't always put out new releases and capabilities on a constant basis and our analysis may be slightly outdated. One of the best examples of this is, “when does one stop ",[17,86,89],{"href":87,"rel":88},"http://goldengatebridge.org/research/facts.php#PaintHowOften",[],"painting the Golden Gate Bridge","?” The answer is never! It’s an ongoing process that requires continuous paint touch-ups from one end to the other.",[42,92,94],{"id":93},"everyone-can-contribute","Everyone can contribute",[13,96,97],{},"Our open source DNA extends to how we manage the tools landscape pages. We freely solicit input internally from multiple teams within GitLab and more importantly from other vendors’ teams. Anyone, including other vendors, can use GitLab to create an issue stating the change they wish to see or information they would like to correct. This issue is then assigned to the appropriate GitLab team to address. In fact, one Product Manager from a vendor recently contacted us about a change to their comparison page, and we gladly made that change.",[13,99,100],{},"By providing an opportunity to comment and give feedback, we hope to foster a dialog with those better informed about different products, thereby improving the tools landscape pages with rich and accurate information.",[42,102,104],{"id":103},"easy-to-understand","Easy to understand",[13,106,107],{},"The final challenge in comparison pages is to make them easy to interpret. We do this in two different ways: First, all the feature-level comparison is listed in the comparison page. For those interested in a particular feature or capability, they can easily scan the page to find the feature they’re looking for.",[13,109,110],{},"Sometimes the feature details need explanation, or perhaps there’s a feature that doesn’t quite fit into the “yes or no” mold. For that reason, we also provide a top-down analysis at the start of most comparison pages that provides a summary of features and provides additional context. This sometimes means a critical feature can get lost in the text, but we are doing our best to keep consistency across vendors and identify discrepancies quickly.",[13,112,113,114,118,119,123,124,129],{},"There are a lot of DevOps tools out there. As a complete ",[17,115,117],{"href":116},"/solutions/devops-platform/","DevOps platform"," delivered as a single application, GitLab can remove the pain of having to choose, integrate, learn, and maintain the multitude of tools necessary for a successful DevOps toolchain. If a DevOps tool is missing, feel free to ",[17,120,122],{"href":121},"mailto:incoming+gitlab-com-marketing-product-marketing-7424125-issue-@incoming.gitlab.com?subject=DevOps%20tool%20request&amp;bcc=devopstools%40gitlab.com&amp;body=-%20Tool%20name%3A%0D%0A-%20Stages%3A%0D%0A-%20Change%3A%0D%0A%0D%0A%0D%0APlease%20leave%20these%20label%20flags.%20%20%20%20%0D%0A%2Flabel%20~comparison%20~Servicedesk","email us"," or ",[17,125,128],{"href":126,"rel":127},"https://docs.gitlab.com/user/project/issues/managing_issues/#create-a-new-issue",[],"create an issue"," and we’ll be happy to add a feature comparison for that product.",[13,131,132,133,138,139],{},"Cover image by ",[17,134,137],{"href":135,"rel":136},"https://unsplash.com/@troynikolic?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText",[],"Troy Nikolic"," on ",[17,140,143],{"href":141,"rel":142},"https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText",[],"Unsplash",{"title":78,"searchDepth":145,"depth":145,"links":146},2,[147,148,149,150],{"id":44,"depth":145,"text":45},{"id":63,"depth":145,"text":64},{"id":93,"depth":145,"text":94},{"id":103,"depth":145,"text":104},"insights","2019-11-01","Competitive intelligence manager Mahesh Kumar describes the criteria we use when comparing GitLab to other DevOps tools.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670008/Blog/Hero%20Images/devops-tool-landscape.jpg",{},true,"/en-us/blog/devops-tool-landscape",{"title":5,"description":153,"ogTitle":5,"ogDescription":153,"noIndex":156,"ogImage":157,"ogUrl":162,"ogSiteName":163,"ogType":164,"canonicalUrls":162},"https://about.gitlab.com/blog/devops-tool-landscape","https://about.gitlab.com","article","devops-tool-landscape","en-us/blog/devops-tool-landscape",[168,169,170],"CI/CD","DevOps","inside GitLab","BlogPost","TPQYvJj_rpYy04QoQCPtfuxX9kXwFINfB9Ih3flCwds",{"logo":174,"freeTrial":179,"sales":184,"login":189,"items":194,"search":519,"minimal":550,"duo":569,"switchNav":578,"pricingDeployment":589},{"config":175},{"href":176,"dataGaName":177,"dataGaLocation":178},"/","gitlab logo","header",{"text":180,"config":181},"Get free trial",{"href":182,"dataGaName":183,"dataGaLocation":178},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":185,"config":186},"Request a demo",{"href":187,"dataGaName":188,"dataGaLocation":178},"/sales/?contact-topic=request-demo","sales",{"text":190,"config":191},"Sign in",{"href":192,"dataGaName":193,"dataGaLocation":178},"https://gitlab.com/users/sign_in/","sign in",[195,223,322,327,441,497],{"text":196,"config":197,"menu":199},"Platform",{"dataNavLevelOne":198},"platform",{"type":200,"columns":201},"cards",[202,208,216],{"title":196,"description":203,"link":204},"The intelligent orchestration platform for DevSecOps",{"text":205,"config":206},"Explore our Platform",{"href":207,"dataGaName":198,"dataGaLocation":178},"/platform/",{"title":209,"description":210,"link":211},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":212,"config":213},"Meet GitLab Duo",{"href":214,"dataGaName":215,"dataGaLocation":178},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":217,"description":218,"link":219},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":220,"config":221},"Learn more",{"href":25,"dataGaName":222,"dataGaLocation":178},"why gitlab",{"text":224,"left":159,"config":225,"menu":227},"Product",{"dataNavLevelOne":226},"solutions",{"type":228,"link":229,"columns":233,"feature":301},"lists",{"text":230,"config":231},"View all Solutions",{"href":232,"dataGaName":226,"dataGaLocation":178},"/solutions/",[234,257,280],{"title":235,"description":236,"link":237,"items":242},"Automation","CI/CD and automation to accelerate deployment",{"config":238},{"icon":239,"href":240,"dataGaName":241,"dataGaLocation":178},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[243,246,249,253],{"text":168,"config":244},{"href":245,"dataGaLocation":178,"dataGaName":168},"/solutions/continuous-integration/",{"text":209,"config":247},{"href":214,"dataGaLocation":178,"dataGaName":248},"gitlab duo agent platform - product menu",{"text":250,"config":251},"Source Code Management",{"href":252,"dataGaLocation":178,"dataGaName":250},"/solutions/source-code-management/",{"text":254,"config":255},"Automated Software Delivery",{"href":240,"dataGaLocation":178,"dataGaName":256},"Automated software delivery",{"title":258,"description":259,"link":260,"items":265},"Security","Deliver code faster without compromising security",{"config":261},{"href":262,"dataGaName":263,"dataGaLocation":178,"icon":264},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[266,270,275],{"text":267,"config":268},"Application Security Testing",{"href":262,"dataGaName":269,"dataGaLocation":178},"Application security testing",{"text":271,"config":272},"Software Supply Chain Security",{"href":273,"dataGaLocation":178,"dataGaName":274},"/solutions/supply-chain/","Software supply chain security",{"text":276,"config":277},"Software Compliance",{"href":278,"dataGaName":279,"dataGaLocation":178},"/solutions/software-compliance/","software compliance",{"title":281,"link":282,"items":287},"Measurement",{"config":283},{"icon":284,"href":285,"dataGaName":286,"dataGaLocation":178},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[288,292,296],{"text":289,"config":290},"Visibility & Measurement",{"href":285,"dataGaLocation":178,"dataGaName":291},"Visibility and Measurement",{"text":293,"config":294},"Value Stream Management",{"href":295,"dataGaLocation":178,"dataGaName":293},"/solutions/value-stream-management/",{"text":297,"config":298},"Analytics & Insights",{"href":299,"dataGaLocation":178,"dataGaName":300},"/solutions/analytics-and-insights/","Analytics and insights",{"title":302,"type":228,"items":303},"GitLab for",[304,310,316],{"text":305,"config":306},"Enterprise",{"icon":307,"href":308,"dataGaLocation":178,"dataGaName":309},"Building","/enterprise/","enterprise",{"text":311,"config":312},"Small Business",{"icon":313,"href":314,"dataGaLocation":178,"dataGaName":315},"Work","/small-business/","small business",{"text":317,"config":318},"Public Sector",{"icon":319,"href":320,"dataGaLocation":178,"dataGaName":321},"Organization","/solutions/public-sector/","public sector",{"text":323,"config":324},"Pricing",{"href":325,"dataGaName":326,"dataGaLocation":178,"dataNavLevelOne":326},"/pricing/","pricing",{"text":328,"config":329,"menu":331},"Resources",{"dataNavLevelOne":330},"resources",{"type":228,"link":332,"columns":336,"feature":430},{"text":333,"config":334},"View all resources",{"href":335,"dataGaName":330,"dataGaLocation":178},"/resources/",[337,370,397],{"title":338,"items":339},"Getting started",[340,345,350,355,360,365],{"text":341,"config":342},"Install",{"href":343,"dataGaName":344,"dataGaLocation":178},"/install/","install",{"text":346,"config":347},"Quick start guides",{"href":348,"dataGaName":349,"dataGaLocation":178},"/get-started/","quick setup checklists",{"text":351,"config":352},"Learn",{"href":353,"dataGaLocation":178,"dataGaName":354},"https://university.gitlab.com/","learn",{"text":356,"config":357},"Product documentation",{"href":358,"dataGaName":359,"dataGaLocation":178},"https://docs.gitlab.com/","product documentation",{"text":361,"config":362},"Best practice videos",{"href":363,"dataGaName":364,"dataGaLocation":178},"/getting-started-videos/","best practice videos",{"text":366,"config":367},"Integrations",{"href":368,"dataGaName":369,"dataGaLocation":178},"/integrations/","integrations",{"title":371,"items":372},"Discover",[373,378,383,388,392],{"text":374,"config":375},"Customer success stories",{"href":376,"dataGaName":377,"dataGaLocation":178},"/customers/","customer success stories",{"text":379,"config":380},"Blog",{"href":381,"dataGaName":382,"dataGaLocation":178},"/blog/","blog",{"text":384,"config":385},"Demo Hub",{"href":386,"dataGaName":387,"dataGaLocation":178},"/demo-hub/","demo hub",{"text":389,"config":390},"The Source",{"href":391,"dataGaName":382,"dataGaLocation":178},"/the-source/",{"text":393,"config":394},"Remote",{"href":395,"dataGaName":396,"dataGaLocation":178},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":398,"items":399},"Connect",[400,405,410,415,420,425],{"text":401,"config":402},"GitLab Services",{"href":403,"dataGaName":404,"dataGaLocation":178},"/services/","services",{"text":406,"config":407},"Contribute",{"href":408,"dataGaName":409,"dataGaLocation":178},"https://contributors.gitlab.com","contribute",{"text":411,"config":412},"Community",{"href":413,"dataGaName":414,"dataGaLocation":178},"/community/","community",{"text":416,"config":417},"Forum",{"href":418,"dataGaName":419,"dataGaLocation":178},"https://forum.gitlab.com/","forum",{"text":421,"config":422},"Events",{"href":423,"dataGaName":424,"dataGaLocation":178},"/events/","events",{"text":426,"config":427},"Partners",{"href":428,"dataGaName":429,"dataGaLocation":178},"/partners/","partners",{"config":431,"title":434,"text":435,"link":436},{"background":432,"textColor":433},"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":437,"config":438},"Read the latest",{"href":439,"dataGaName":440,"dataGaLocation":178},"/whats-new/","whats new",{"text":442,"config":443,"menu":445},"Company",{"dataNavLevelOne":444},"company",{"type":228,"columns":446},[447],{"items":448},[449,454,460,462,467,472,477,482,487,492],{"text":450,"config":451},"About",{"href":452,"dataGaName":453,"dataGaLocation":178},"/company/","about",{"text":455,"config":456,"footerGa":459},"Jobs",{"href":457,"dataGaName":458,"dataGaLocation":178},"/jobs/","jobs",{"dataGaName":458},{"text":421,"config":461},{"href":423,"dataGaName":424,"dataGaLocation":178},{"text":463,"config":464},"Leadership",{"href":465,"dataGaName":466,"dataGaLocation":178},"/company/team/e-group/","leadership",{"text":468,"config":469},"Handbook",{"href":470,"dataGaName":471,"dataGaLocation":178},"https://handbook.gitlab.com/","handbook",{"text":473,"config":474},"Investor relations",{"href":475,"dataGaName":476,"dataGaLocation":178},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":478,"config":479},"Trust Center",{"href":480,"dataGaName":481,"dataGaLocation":178},"/security/","trust center",{"text":483,"config":484},"AI Transparency Center",{"href":485,"dataGaName":486,"dataGaLocation":178},"/ai-transparency-center/","ai transparency center",{"text":488,"config":489},"Newsletter",{"href":490,"dataGaName":491,"dataGaLocation":178},"/company/contact/#contact-forms","newsletter",{"text":493,"config":494},"Press",{"href":495,"dataGaName":496,"dataGaLocation":178},"/press/","press",{"text":498,"config":499,"menu":500},"Contact us",{"dataNavLevelOne":444},{"type":228,"columns":501},[502],{"items":503},[504,509,514],{"text":505,"config":506},"Talk to sales",{"href":507,"dataGaName":508,"dataGaLocation":178},"/sales/","talk to sales",{"text":510,"config":511},"Support portal",{"href":512,"dataGaName":513,"dataGaLocation":178},"https://support.gitlab.com/hc/en-us","support portal",{"text":515,"config":516},"Customer portal",{"href":517,"dataGaName":518,"dataGaLocation":178},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":520,"login":521,"suggestions":528},"Close",{"text":522,"link":523},"To search repositories and projects, login to",{"text":524,"config":525},"gitlab.com",{"href":192,"dataGaName":526,"dataGaLocation":527},"search login","search",{"text":529,"default":530},"Suggestions",[531,533,537,539,543,547],{"text":209,"config":532},{"href":214,"dataGaName":209,"dataGaLocation":527},{"text":534,"config":535},"Code Suggestions (AI)",{"href":536,"dataGaName":534,"dataGaLocation":527},"/solutions/code-suggestions/",{"text":168,"config":538},{"href":245,"dataGaName":168,"dataGaLocation":527},{"text":540,"config":541},"GitLab on AWS",{"href":542,"dataGaName":540,"dataGaLocation":527},"/partners/technology-partners/aws/",{"text":544,"config":545},"GitLab on Google Cloud",{"href":546,"dataGaName":544,"dataGaLocation":527},"/partners/technology-partners/google-cloud-platform/",{"text":548,"config":549},"Why GitLab?",{"href":25,"dataGaName":548,"dataGaLocation":527},{"freeTrial":551,"mobileIcon":556,"desktopIcon":561,"secondaryButton":564},{"text":552,"config":553},"Start free trial",{"href":554,"dataGaName":183,"dataGaLocation":555},"https://gitlab.com/-/trials/new/","nav",{"altText":557,"config":558},"Gitlab Icon",{"src":559,"dataGaName":560,"dataGaLocation":555},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":557,"config":562},{"src":563,"dataGaName":560,"dataGaLocation":555},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":565,"config":566},"Get Started",{"href":567,"dataGaName":568,"dataGaLocation":555},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":570,"mobileIcon":574,"desktopIcon":576},{"text":571,"config":572},"Learn more about GitLab Duo",{"href":214,"dataGaName":573,"dataGaLocation":555},"gitlab duo",{"altText":557,"config":575},{"src":559,"dataGaName":560,"dataGaLocation":555},{"altText":557,"config":577},{"src":563,"dataGaName":560,"dataGaLocation":555},{"button":579,"mobileIcon":584,"desktopIcon":586},{"text":580,"config":581},"/switch",{"href":582,"dataGaName":583,"dataGaLocation":555},"#contact","switch",{"altText":557,"config":585},{"src":559,"dataGaName":560,"dataGaLocation":555},{"altText":557,"config":587},{"src":588,"dataGaName":560,"dataGaLocation":555},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":590,"mobileIcon":595,"desktopIcon":597},{"text":591,"config":592},"Back to pricing",{"href":325,"dataGaName":593,"dataGaLocation":555,"icon":594},"back to pricing","GoBack",{"altText":557,"config":596},{"src":559,"dataGaName":560,"dataGaLocation":555},{"altText":557,"config":598},{"src":563,"dataGaName":560,"dataGaLocation":555},{"title":600,"titleMobile":601,"button":602,"config":607},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":220,"config":603},{"href":604,"dataGaName":605,"dataGaLocation":606},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":608,"disabled":156},"release",{"data":610},{"text":611,"source":612,"edit":618,"contribute":623,"config":628,"items":633,"minimal":842},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":613,"config":614},"View page source",{"href":615,"dataGaName":616,"dataGaLocation":617},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":619,"config":620},"Edit this page",{"href":621,"dataGaName":622,"dataGaLocation":617},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":624,"config":625},"Please contribute",{"href":626,"dataGaName":627,"dataGaLocation":617},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":629,"facebook":630,"youtube":631,"linkedin":632},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[634,681,734,778,810],{"title":323,"links":635,"subMenu":650},[636,640,645],{"text":637,"config":638},"View plans",{"href":325,"dataGaName":639,"dataGaLocation":617},"view plans",{"text":641,"config":642},"Why Premium?",{"href":643,"dataGaName":644,"dataGaLocation":617},"/pricing/premium/","why premium",{"text":646,"config":647},"Why Ultimate?",{"href":648,"dataGaName":649,"dataGaLocation":617},"/pricing/ultimate/","why ultimate",[651],{"title":652,"links":653},"Contact Us",[654,657,659,661,666,671,676],{"text":655,"config":656},"Contact sales",{"href":507,"dataGaName":188,"dataGaLocation":617},{"text":510,"config":658},{"href":512,"dataGaName":513,"dataGaLocation":617},{"text":515,"config":660},{"href":517,"dataGaName":518,"dataGaLocation":617},{"text":662,"config":663},"Status",{"href":664,"dataGaName":665,"dataGaLocation":617},"https://status.gitlab.com/","status",{"text":667,"config":668},"Terms of use",{"href":669,"dataGaName":670,"dataGaLocation":617},"/terms/","terms of use",{"text":672,"config":673},"Privacy statement",{"href":674,"dataGaName":675,"dataGaLocation":617},"/privacy/","privacy statement",{"text":677,"config":678},"Cookie preferences",{"dataGaName":679,"dataGaLocation":617,"id":680,"isOneTrustButton":159},"cookie preferences","ot-sdk-btn",{"title":224,"links":682,"subMenu":691},[683,687],{"text":684,"config":685},"DevSecOps platform",{"href":207,"dataGaName":686,"dataGaLocation":617},"devsecops platform",{"text":688,"config":689},"AI-Assisted Development",{"href":214,"dataGaName":690,"dataGaLocation":617},"ai-assisted development",[692],{"title":693,"links":694},"Topics",[695,700,705,709,714,719,724,729],{"text":696,"config":697},"CICD",{"href":698,"dataGaName":699,"dataGaLocation":617},"/topics/ci-cd/","cicd",{"text":701,"config":702},"GitOps",{"href":703,"dataGaName":704,"dataGaLocation":617},"/topics/gitops/","gitops",{"text":169,"config":706},{"href":707,"dataGaName":708,"dataGaLocation":617},"/topics/devops/","devops",{"text":710,"config":711},"Version Control",{"href":712,"dataGaName":713,"dataGaLocation":617},"/topics/version-control/","version control",{"text":715,"config":716},"DevSecOps",{"href":717,"dataGaName":718,"dataGaLocation":617},"/topics/devsecops/","devsecops",{"text":720,"config":721},"Cloud Native",{"href":722,"dataGaName":723,"dataGaLocation":617},"/topics/cloud-native/","cloud native",{"text":725,"config":726},"AI for Coding",{"href":727,"dataGaName":728,"dataGaLocation":617},"/topics/devops/ai-for-coding/","ai for coding",{"text":730,"config":731},"Agentic AI",{"href":732,"dataGaName":733,"dataGaLocation":617},"/topics/agentic-ai/","agentic ai",{"title":735,"links":736},"Solutions",[737,739,741,746,750,753,757,760,762,765,768,773],{"text":267,"config":738},{"href":262,"dataGaName":267,"dataGaLocation":617},{"text":256,"config":740},{"href":240,"dataGaName":241,"dataGaLocation":617},{"text":742,"config":743},"Agile development",{"href":744,"dataGaName":745,"dataGaLocation":617},"/solutions/agile-delivery/","agile delivery",{"text":747,"config":748},"SCM",{"href":252,"dataGaName":749,"dataGaLocation":617},"source code management",{"text":696,"config":751},{"href":245,"dataGaName":752,"dataGaLocation":617},"continuous integration & delivery",{"text":754,"config":755},"Value stream management",{"href":295,"dataGaName":756,"dataGaLocation":617},"value stream management",{"text":701,"config":758},{"href":759,"dataGaName":704,"dataGaLocation":617},"/solutions/gitops/",{"text":305,"config":761},{"href":308,"dataGaName":309,"dataGaLocation":617},{"text":763,"config":764},"Small business",{"href":314,"dataGaName":315,"dataGaLocation":617},{"text":766,"config":767},"Public sector",{"href":320,"dataGaName":321,"dataGaLocation":617},{"text":769,"config":770},"Education",{"href":771,"dataGaName":772,"dataGaLocation":617},"/solutions/education/","education",{"text":774,"config":775},"Financial services",{"href":776,"dataGaName":777,"dataGaLocation":617},"/solutions/finance/","financial services",{"title":328,"links":779},[780,782,784,786,789,791,794,796,798,800,802,804,806,808],{"text":341,"config":781},{"href":343,"dataGaName":344,"dataGaLocation":617},{"text":346,"config":783},{"href":348,"dataGaName":349,"dataGaLocation":617},{"text":351,"config":785},{"href":353,"dataGaName":354,"dataGaLocation":617},{"text":356,"config":787},{"href":358,"dataGaName":788,"dataGaLocation":617},"docs",{"text":379,"config":790},{"href":381,"dataGaName":382,"dataGaLocation":617},{"text":792,"config":793},"What's new",{"href":439,"dataGaName":440,"dataGaLocation":617},{"text":374,"config":795},{"href":376,"dataGaName":377,"dataGaLocation":617},{"text":393,"config":797},{"href":395,"dataGaName":396,"dataGaLocation":617},{"text":401,"config":799},{"href":403,"dataGaName":404,"dataGaLocation":617},{"text":406,"config":801},{"href":408,"dataGaName":409,"dataGaLocation":617},{"text":411,"config":803},{"href":413,"dataGaName":414,"dataGaLocation":617},{"text":416,"config":805},{"href":418,"dataGaName":419,"dataGaLocation":617},{"text":421,"config":807},{"href":423,"dataGaName":424,"dataGaLocation":617},{"text":426,"config":809},{"href":428,"dataGaName":429,"dataGaLocation":617},{"title":442,"links":811},[812,814,816,818,820,822,826,831,833,835,837],{"text":450,"config":813},{"href":452,"dataGaName":444,"dataGaLocation":617},{"text":455,"config":815},{"href":457,"dataGaName":458,"dataGaLocation":617},{"text":463,"config":817},{"href":465,"dataGaName":466,"dataGaLocation":617},{"text":468,"config":819},{"href":470,"dataGaName":471,"dataGaLocation":617},{"text":473,"config":821},{"href":475,"dataGaName":476,"dataGaLocation":617},{"text":823,"config":824},"Sustainability",{"href":825,"dataGaName":823,"dataGaLocation":617},"/sustainability/",{"text":827,"config":828},"Diversity, inclusion and belonging (DIB)",{"href":829,"dataGaName":830,"dataGaLocation":617},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":478,"config":832},{"href":480,"dataGaName":481,"dataGaLocation":617},{"text":488,"config":834},{"href":490,"dataGaName":491,"dataGaLocation":617},{"text":493,"config":836},{"href":495,"dataGaName":496,"dataGaLocation":617},{"text":838,"config":839},"Modern Slavery Transparency Statement",{"href":840,"dataGaName":841,"dataGaLocation":617},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":843},[844,847,850],{"text":845,"config":846},"Terms",{"href":669,"dataGaName":670,"dataGaLocation":617},{"text":848,"config":849},"Cookies",{"dataGaName":679,"dataGaLocation":617,"id":680,"isOneTrustButton":159},{"text":851,"config":852},"Privacy",{"href":674,"dataGaName":675,"dataGaLocation":617},[854,868],{"id":855,"title":7,"body":155,"config":856,"content":858,"description":155,"extension":862,"meta":863,"navigation":159,"path":864,"seo":865,"stem":866,"__hash__":867},"blogAuthors/en-us/blog/authors/mahesh-kumar.yml",{"template":857},"BlogAuthor",{"name":7,"config":859},{"headshot":860,"ctfId":861},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","2ihYV6SzSOXfvpI2eJ87Mv","yml",{},"/en-us/blog/authors/mahesh-kumar",{},"en-us/blog/authors/mahesh-kumar","ellKEq8s0FSccjXiG-u_5eacwLPvmHX6FUzIjGVad7s",{"id":869,"title":8,"body":155,"config":870,"content":871,"description":155,"extension":862,"meta":874,"navigation":159,"path":875,"seo":876,"stem":877,"__hash__":878},"blogAuthors/en-us/blog/authors/chrissie-buchanan.yml",{"template":857},{"name":8,"config":872},{"headshot":860,"ctfId":873},"cbuchanan",{},"/en-us/blog/authors/chrissie-buchanan",{},"en-us/blog/authors/chrissie-buchanan","VUaqNs-WRatnVN614U2QKvMKVSh6PynpH3T0SHM4ayU",[880,888,896],{"title":881,"description":882,"heroImage":883,"category":151,"date":884,"authors":885,"slug":887,"externalUrl":155},"How we overhauled GitLab navigation","Users weren't getting what they needed from our navigation. Here are the steps we took to turn that experience around.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682884/Blog/Hero%20Images/navigation.jpg","2023-08-15",[886],"Ashley Knobloch","navigation-research-blog-post",{"title":889,"description":890,"heroImage":891,"category":151,"date":892,"authors":893,"slug":895,"externalUrl":155},"Beautifying our UI: Giving GitLab build features a fresh look","Get an inside look at how we are improving the usability of GitLab build features with multiple visual design improvements.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682807/Blog/Hero%20Images/beautify.jpg","2023-07-05",[894],"Veethika Mishra","beautifying-of-our-ui",{"title":897,"description":898,"heroImage":899,"category":151,"date":900,"authors":901,"slug":903,"externalUrl":155},"4 best practices leading orgs to release software faster","GitLab's 2023 Global DevSecOps Survey illuminates the strategies that organizations deploying more frequently have in common.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663908/Blog/Hero%20Images/2023-devsecops-report-blog-banner2.png","2023-06-08",[902],"Kristina Weis","best-practices-leading-orgs-to-release-software-faster",{"promotions":905},[906,920,932,944],{"id":907,"categories":908,"header":910,"text":911,"button":912,"image":917},"ai-modernization",[909],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":913,"config":914},"Get your AI maturity score",{"href":915,"dataGaName":916,"dataGaLocation":382},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":918},{"src":919},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":921,"categories":922,"header":924,"text":911,"button":925,"image":929},"devops-modernization",[923,718],"product","Are you just managing tools or shipping innovation?",{"text":926,"config":927},"Get your DevOps maturity score",{"href":928,"dataGaName":916,"dataGaLocation":382},"/assessments/devops-modernization-assessment/",{"config":930},{"src":931},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":933,"categories":934,"header":936,"text":911,"button":937,"image":941},"security-modernization",[935],"security","Are you trading speed for security?",{"text":938,"config":939},"Get your security maturity score",{"href":940,"dataGaName":916,"dataGaLocation":382},"/assessments/security-modernization-assessment/",{"config":942},{"src":943},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":945,"paths":946,"header":949,"text":950,"button":951,"image":956},"github-azure-migration",[947,948],"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":952,"config":953},"See how GitLab compares to GitHub",{"href":954,"dataGaName":955,"dataGaLocation":382},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":957},{"src":931},{"header":959,"blurb":960,"button":961,"secondaryButton":966},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":962,"config":963},"Get your free trial",{"href":964,"dataGaName":183,"dataGaLocation":965},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":655,"config":967},{"href":507,"dataGaName":188,"dataGaLocation":965},1786803748581]