[{"data":1,"prerenderedAt":987},["ShallowReactive",2],{"/blog/contributor-after-single-code-base":3,"navigation-en-us":203,"banner-en-us":630,"footer-en-us":640,"blog-post-authors-en-us-Ray Paik":885,"blog-related-posts-en-us-contributor-after-single-code-base":899,"blog-promotions-en-us":923,"next-steps-en-us":977},{"id":4,"title":5,"authors":6,"body":8,"category":181,"date":182,"description":183,"extension":184,"externalUrl":185,"faq":185,"featured":186,"heroImage":187,"meta":188,"navigation":189,"path":190,"seo":191,"slug":195,"stem":196,"tags":197,"template":201,"updatedDate":185,"__hash__":202},"blogPosts/en-us/blog/contributor-after-single-code-base.md","Contributing to GitLab after move to a single codebase",[7],"Ray Paik",{"type":9,"value":10,"toc":173},"minimark",[11,31,38,43,73,77,95,99,102,117,124,128,148,159],[12,13,14,15,20,21,25,26,30],"p",{},"By now, many readers will already be familair with GitLab's move to a single Rails codebase for GitLab Community(CE) and Enterprise(EE) Editions. The motivation for the change and work involved were well documented in blog posts by ",[16,17,19],"a",{"href":18},"/blog/merging-ce-and-ee-codebases/","Marin Jankovski"," and ",[16,22,24],{"href":23},"/blog/a-single-codebase-for-gitlab-community-and-enterprise-edition/","Yorick Peterse",". Also, if you had an open merge request (MR) in CE, you probably saw messages from the GitLab bot (",[27,28,29],"code",{},"@gitlab-bot",") like the one below.",[12,32,33],{},[34,35],"img",{"alt":36,"src":37},"GitLab bot message","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782397880/blog/Content%20Images/Bot-closing-GitLab-FOSS-MR.png",[39,40,42],"h2",{"id":41},"only-impacts-contributions-to-the-new-gitlab-repository","Only impacts contributions to the new GitLab repository",[12,44,45,46,51,52,51,57,51,62,51,67,72],{},"I want to highlight a couple of things with this move to a single codebase. First, if you are contributing to other GitLab projects such as ",[16,47,50],{"href":48,"rel":49},"https://gitlab.com/gitlab-org/charts/gitlab",[],"Charts",", ",[16,53,56],{"href":54,"rel":55},"https://gitlab.com/gitlab-org/gitlab-services/design.gitlab.com",[],"GitLab Design System",[16,58,61],{"href":59,"rel":60},"https://gitlab.com/gitlab-org/gitlab-ui",[],"GitLab UI",[16,63,66],{"href":64,"rel":65},"https://gitlab.com/gitlab-org/omnibus-gitlab",[],"Omnibus",[16,68,71],{"href":69,"rel":70},"https://gitlab.com/gitlab-org/gitlab-runner",[],"Runner",", etc., this move to a single Rails codebase for CE & EE will not have any impact on your contribution workflow.",[39,74,76],{"id":75},"licenses-remain-the-same","Licenses remain the same",[12,78,79,80,88,89,94],{},"Next, there is no change to licensing. GitLab CE will remain open source under the MIT license. GitLab EE code will reside in the ",[16,81,84,87],{"href":82,"rel":83},"https://gitlab.com/gitlab-org/gitlab/tree/master/ee",[],[27,85,86],{},"ee"," directory"," in the ",[16,90,93],{"href":91,"rel":92},"https://gitlab.com/gitlab-org/gitlab",[],"new gitlab (formerly gitlab-ee) project"," and will remain source available under a proprietary license.",[39,96,98],{"id":97},"higher-efficiency-and-easier-to-contribute","Higher efficiency and easier to contribute",[12,100,101],{},"With this move to a single codebase, there will be less duplicate work and manual intervention required from GitLab team members in the future. This gives them more bandwidth for higher value activities, including helping with wider community contributions.",[12,103,104,105,110,111,116],{},"The single codebase should also simplify things for wider community members, as you can now search ",[16,106,109],{"href":107,"rel":108},"https://gitlab.com/gitlab-org/gitlab/issues",[],"for issues in one place",", and there's also ",[16,112,115],{"href":113,"rel":114},"https://gitlab.com/gitlab-org/gitlab/merge_requests",[],"one place for MRs",".",[12,118,119,120,123],{},"As another example for improvement, in the past, contributors occasionally had to deal with ",[27,121,122],{},"ee_compat_check"," errors when they submitted an MR in CE. This required opening an MR in EE (or asking a GitLab team member to open an EE MR) and then wait for it to be merged before continuing with the CE MR. This was a pain point for many contributors, and I am excited that this will be eliminated with the single codebase.",[39,125,127],{"id":126},"re-submitting-mrs-against-the-new-gitlab-project","Re-submitting MRs against the new GitLab project",[12,129,130,131,136,137,141,142,147],{},"If you have an MR that was auto-closed by the GitLab bot in CE (now ",[16,132,135],{"href":133,"rel":134},"https://gitlab.com/gitlab-org/gitlab-foss",[],"GitLab FOSS","), you can continue your work by creating a new MR in the ",[16,138,140],{"href":91,"rel":139},[],"new gitlab project"," following the steps outlined in the GitLab bot message above. If you have any questions or encounter issues when you open a new MR, please feel free to ",[16,143,146],{"href":144,"rel":145},"https://docs.gitlab.com/user/group/subgroups/#mentioning-subgroups",[],"mention"," the reviewers from your original MR or me and ask for help.",[12,149,150,151,155,156,116],{},"During and after the transition, I was happy to see MR's continuing to come in from the wider community so it doesn't look like this was a major disruption. However, if you have any questions or feedback you are welcome to ",[16,152,154],{"href":107,"rel":153},[],"open an issue in gitlab"," or reach out to me at ",[27,157,158],{},"rpaik@gitlab.com",[12,160,161,166,167,172],{},[16,162,165],{"href":163,"rel":164},"https://unsplash.com/photos/ZV_64LdGoao",[],"\"GitLab application screengrab\""," by ",[16,168,171],{"href":169,"rel":170},"https://unsplash.com/@pankajpatel",[],"Pankaj Patel"," on Unsplash",{"title":174,"searchDepth":175,"depth":175,"links":176},"",2,[177,178,179,180],{"id":41,"depth":175,"text":42},{"id":75,"depth":175,"text":76},{"id":97,"depth":175,"text":98},{"id":126,"depth":175,"text":127},"unfiltered","2019-10-02","How contributors can benefit from the move to a single codebase for GitLab Community and Enterprise Editions.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663430/Blog/Hero%20Images/2018-09-13-gitlab-hackathon-cover.jpg",{},true,"/en-us/blog/contributor-after-single-code-base",{"title":5,"description":183,"ogTitle":5,"ogDescription":183,"noIndex":186,"ogImage":187,"ogUrl":192,"ogSiteName":193,"ogType":194,"canonicalUrls":192},"https://about.gitlab.com/blog/contributor-after-single-code-base","https://about.gitlab.com","article","contributor-after-single-code-base","en-us/blog/contributor-after-single-code-base",[198,199,200],"community","collaboration","open source","BlogPost","_vKTCtXUMnFzSwU4qodSV3jef8KxNYJTWqPeS7BN9kE",{"logo":204,"freeTrial":209,"sales":214,"login":219,"items":224,"search":550,"minimal":581,"duo":600,"switchNav":609,"pricingDeployment":620},{"config":205},{"href":206,"dataGaName":207,"dataGaLocation":208},"/","gitlab logo","header",{"text":210,"config":211},"Get free trial",{"href":212,"dataGaName":213,"dataGaLocation":208},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":215,"config":216},"Request a demo",{"href":217,"dataGaName":218,"dataGaLocation":208},"/sales/?contact-topic=request-demo","sales",{"text":220,"config":221},"Sign in",{"href":222,"dataGaName":223,"dataGaLocation":208},"https://gitlab.com/users/sign_in/","sign in",[225,254,354,359,472,528],{"text":226,"config":227,"menu":229},"Platform",{"dataNavLevelOne":228},"platform",{"type":230,"columns":231},"cards",[232,238,246],{"title":226,"description":233,"link":234},"The intelligent orchestration platform for DevSecOps",{"text":235,"config":236},"Explore our Platform",{"href":237,"dataGaName":228,"dataGaLocation":208},"/platform/",{"title":239,"description":240,"link":241},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":242,"config":243},"Meet GitLab Duo",{"href":244,"dataGaName":245,"dataGaLocation":208},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":247,"description":248,"link":249},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":250,"config":251},"Learn more",{"href":252,"dataGaName":253,"dataGaLocation":208},"/why-gitlab/","why gitlab",{"text":255,"left":189,"config":256,"menu":258},"Product",{"dataNavLevelOne":257},"solutions",{"type":259,"link":260,"columns":264,"feature":333},"lists",{"text":261,"config":262},"View all Solutions",{"href":263,"dataGaName":257,"dataGaLocation":208},"/solutions/",[265,289,312],{"title":266,"description":267,"link":268,"items":273},"Automation","CI/CD and automation to accelerate deployment",{"config":269},{"icon":270,"href":271,"dataGaName":272,"dataGaLocation":208},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[274,278,281,285],{"text":275,"config":276},"CI/CD",{"href":277,"dataGaLocation":208,"dataGaName":275},"/solutions/continuous-integration/",{"text":239,"config":279},{"href":244,"dataGaLocation":208,"dataGaName":280},"gitlab duo agent platform - product menu",{"text":282,"config":283},"Source Code Management",{"href":284,"dataGaLocation":208,"dataGaName":282},"/solutions/source-code-management/",{"text":286,"config":287},"Automated Software Delivery",{"href":271,"dataGaLocation":208,"dataGaName":288},"Automated software delivery",{"title":290,"description":291,"link":292,"items":297},"Security","Deliver code faster without compromising security",{"config":293},{"href":294,"dataGaName":295,"dataGaLocation":208,"icon":296},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[298,302,307],{"text":299,"config":300},"Application Security Testing",{"href":294,"dataGaName":301,"dataGaLocation":208},"Application security testing",{"text":303,"config":304},"Software Supply Chain Security",{"href":305,"dataGaLocation":208,"dataGaName":306},"/solutions/supply-chain/","Software supply chain security",{"text":308,"config":309},"Software Compliance",{"href":310,"dataGaName":311,"dataGaLocation":208},"/solutions/software-compliance/","software compliance",{"title":313,"link":314,"items":319},"Measurement",{"config":315},{"icon":316,"href":317,"dataGaName":318,"dataGaLocation":208},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[320,324,328],{"text":321,"config":322},"Visibility & Measurement",{"href":317,"dataGaLocation":208,"dataGaName":323},"Visibility and Measurement",{"text":325,"config":326},"Value Stream Management",{"href":327,"dataGaLocation":208,"dataGaName":325},"/solutions/value-stream-management/",{"text":329,"config":330},"Analytics & Insights",{"href":331,"dataGaLocation":208,"dataGaName":332},"/solutions/analytics-and-insights/","Analytics and insights",{"title":334,"type":259,"items":335},"GitLab for",[336,342,348],{"text":337,"config":338},"Enterprise",{"icon":339,"href":340,"dataGaLocation":208,"dataGaName":341},"Building","/enterprise/","enterprise",{"text":343,"config":344},"Small Business",{"icon":345,"href":346,"dataGaLocation":208,"dataGaName":347},"Work","/small-business/","small business",{"text":349,"config":350},"Public Sector",{"icon":351,"href":352,"dataGaLocation":208,"dataGaName":353},"Organization","/solutions/public-sector/","public sector",{"text":355,"config":356},"Pricing",{"href":357,"dataGaName":358,"dataGaLocation":208,"dataNavLevelOne":358},"/pricing/","pricing",{"text":360,"config":361,"menu":363},"Resources",{"dataNavLevelOne":362},"resources",{"type":259,"link":364,"columns":368,"feature":461},{"text":365,"config":366},"View all resources",{"href":367,"dataGaName":362,"dataGaLocation":208},"/resources/",[369,402,429],{"title":370,"items":371},"Getting started",[372,377,382,387,392,397],{"text":373,"config":374},"Install",{"href":375,"dataGaName":376,"dataGaLocation":208},"/install/","install",{"text":378,"config":379},"Quick start guides",{"href":380,"dataGaName":381,"dataGaLocation":208},"/get-started/","quick setup checklists",{"text":383,"config":384},"Learn",{"href":385,"dataGaLocation":208,"dataGaName":386},"https://university.gitlab.com/","learn",{"text":388,"config":389},"Product documentation",{"href":390,"dataGaName":391,"dataGaLocation":208},"https://docs.gitlab.com/","product documentation",{"text":393,"config":394},"Best practice videos",{"href":395,"dataGaName":396,"dataGaLocation":208},"/getting-started-videos/","best practice videos",{"text":398,"config":399},"Integrations",{"href":400,"dataGaName":401,"dataGaLocation":208},"/integrations/","integrations",{"title":403,"items":404},"Discover",[405,410,415,420,424],{"text":406,"config":407},"Customer success stories",{"href":408,"dataGaName":409,"dataGaLocation":208},"/customers/","customer success stories",{"text":411,"config":412},"Blog",{"href":413,"dataGaName":414,"dataGaLocation":208},"/blog/","blog",{"text":416,"config":417},"Demo Hub",{"href":418,"dataGaName":419,"dataGaLocation":208},"/demo-hub/","demo hub",{"text":421,"config":422},"The Source",{"href":423,"dataGaName":414,"dataGaLocation":208},"/the-source/",{"text":425,"config":426},"Remote",{"href":427,"dataGaName":428,"dataGaLocation":208},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":430,"items":431},"Connect",[432,437,442,446,451,456],{"text":433,"config":434},"GitLab Services",{"href":435,"dataGaName":436,"dataGaLocation":208},"/services/","services",{"text":438,"config":439},"Contribute",{"href":440,"dataGaName":441,"dataGaLocation":208},"https://contributors.gitlab.com","contribute",{"text":443,"config":444},"Community",{"href":445,"dataGaName":198,"dataGaLocation":208},"/community/",{"text":447,"config":448},"Forum",{"href":449,"dataGaName":450,"dataGaLocation":208},"https://forum.gitlab.com/","forum",{"text":452,"config":453},"Events",{"href":454,"dataGaName":455,"dataGaLocation":208},"/events/","events",{"text":457,"config":458},"Partners",{"href":459,"dataGaName":460,"dataGaLocation":208},"/partners/","partners",{"config":462,"title":465,"text":466,"link":467},{"background":463,"textColor":464},"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":468,"config":469},"Read the latest",{"href":470,"dataGaName":471,"dataGaLocation":208},"/whats-new/","whats new",{"text":473,"config":474,"menu":476},"Company",{"dataNavLevelOne":475},"company",{"type":259,"columns":477},[478],{"items":479},[480,485,491,493,498,503,508,513,518,523],{"text":481,"config":482},"About",{"href":483,"dataGaName":484,"dataGaLocation":208},"/company/","about",{"text":486,"config":487,"footerGa":490},"Jobs",{"href":488,"dataGaName":489,"dataGaLocation":208},"/jobs/","jobs",{"dataGaName":489},{"text":452,"config":492},{"href":454,"dataGaName":455,"dataGaLocation":208},{"text":494,"config":495},"Leadership",{"href":496,"dataGaName":497,"dataGaLocation":208},"/company/team/e-group/","leadership",{"text":499,"config":500},"Handbook",{"href":501,"dataGaName":502,"dataGaLocation":208},"https://handbook.gitlab.com/","handbook",{"text":504,"config":505},"Investor relations",{"href":506,"dataGaName":507,"dataGaLocation":208},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":509,"config":510},"Trust Center",{"href":511,"dataGaName":512,"dataGaLocation":208},"/security/","trust center",{"text":514,"config":515},"AI Transparency Center",{"href":516,"dataGaName":517,"dataGaLocation":208},"/ai-transparency-center/","ai transparency center",{"text":519,"config":520},"Newsletter",{"href":521,"dataGaName":522,"dataGaLocation":208},"/company/contact/#contact-forms","newsletter",{"text":524,"config":525},"Press",{"href":526,"dataGaName":527,"dataGaLocation":208},"/press/","press",{"text":529,"config":530,"menu":531},"Contact us",{"dataNavLevelOne":475},{"type":259,"columns":532},[533],{"items":534},[535,540,545],{"text":536,"config":537},"Talk to sales",{"href":538,"dataGaName":539,"dataGaLocation":208},"/sales/","talk to sales",{"text":541,"config":542},"Support portal",{"href":543,"dataGaName":544,"dataGaLocation":208},"https://support.gitlab.com/hc/en-us","support portal",{"text":546,"config":547},"Customer portal",{"href":548,"dataGaName":549,"dataGaLocation":208},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":551,"login":552,"suggestions":559},"Close",{"text":553,"link":554},"To search repositories and projects, login to",{"text":555,"config":556},"gitlab.com",{"href":222,"dataGaName":557,"dataGaLocation":558},"search login","search",{"text":560,"default":561},"Suggestions",[562,564,568,570,574,578],{"text":239,"config":563},{"href":244,"dataGaName":239,"dataGaLocation":558},{"text":565,"config":566},"Code Suggestions (AI)",{"href":567,"dataGaName":565,"dataGaLocation":558},"/solutions/code-suggestions/",{"text":275,"config":569},{"href":277,"dataGaName":275,"dataGaLocation":558},{"text":571,"config":572},"GitLab on AWS",{"href":573,"dataGaName":571,"dataGaLocation":558},"/partners/technology-partners/aws/",{"text":575,"config":576},"GitLab on Google Cloud",{"href":577,"dataGaName":575,"dataGaLocation":558},"/partners/technology-partners/google-cloud-platform/",{"text":579,"config":580},"Why GitLab?",{"href":252,"dataGaName":579,"dataGaLocation":558},{"freeTrial":582,"mobileIcon":587,"desktopIcon":592,"secondaryButton":595},{"text":583,"config":584},"Start free trial",{"href":585,"dataGaName":213,"dataGaLocation":586},"https://gitlab.com/-/trials/new/","nav",{"altText":588,"config":589},"Gitlab Icon",{"src":590,"dataGaName":591,"dataGaLocation":586},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":588,"config":593},{"src":594,"dataGaName":591,"dataGaLocation":586},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":596,"config":597},"Get Started",{"href":598,"dataGaName":599,"dataGaLocation":586},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":601,"mobileIcon":605,"desktopIcon":607},{"text":602,"config":603},"Learn more about GitLab Duo",{"href":244,"dataGaName":604,"dataGaLocation":586},"gitlab duo",{"altText":588,"config":606},{"src":590,"dataGaName":591,"dataGaLocation":586},{"altText":588,"config":608},{"src":594,"dataGaName":591,"dataGaLocation":586},{"button":610,"mobileIcon":615,"desktopIcon":617},{"text":611,"config":612},"/switch",{"href":613,"dataGaName":614,"dataGaLocation":586},"#contact","switch",{"altText":588,"config":616},{"src":590,"dataGaName":591,"dataGaLocation":586},{"altText":588,"config":618},{"src":619,"dataGaName":591,"dataGaLocation":586},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":621,"mobileIcon":626,"desktopIcon":628},{"text":622,"config":623},"Back to pricing",{"href":357,"dataGaName":624,"dataGaLocation":586,"icon":625},"back to pricing","GoBack",{"altText":588,"config":627},{"src":590,"dataGaName":591,"dataGaLocation":586},{"altText":588,"config":629},{"src":594,"dataGaName":591,"dataGaLocation":586},{"title":631,"titleMobile":632,"button":633,"config":638},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":250,"config":634},{"href":635,"dataGaName":636,"dataGaLocation":637},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":639,"disabled":186},"release",{"data":641},{"text":642,"source":643,"edit":649,"contribute":654,"config":659,"items":664,"minimal":874},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":644,"config":645},"View page source",{"href":646,"dataGaName":647,"dataGaLocation":648},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":650,"config":651},"Edit this page",{"href":652,"dataGaName":653,"dataGaLocation":648},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":655,"config":656},"Please contribute",{"href":657,"dataGaName":658,"dataGaLocation":648},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":660,"facebook":661,"youtube":662,"linkedin":663},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[665,712,766,810,842],{"title":355,"links":666,"subMenu":681},[667,671,676],{"text":668,"config":669},"View plans",{"href":357,"dataGaName":670,"dataGaLocation":648},"view plans",{"text":672,"config":673},"Why Premium?",{"href":674,"dataGaName":675,"dataGaLocation":648},"/pricing/premium/","why premium",{"text":677,"config":678},"Why Ultimate?",{"href":679,"dataGaName":680,"dataGaLocation":648},"/pricing/ultimate/","why ultimate",[682],{"title":683,"links":684},"Contact Us",[685,688,690,692,697,702,707],{"text":686,"config":687},"Contact sales",{"href":538,"dataGaName":218,"dataGaLocation":648},{"text":541,"config":689},{"href":543,"dataGaName":544,"dataGaLocation":648},{"text":546,"config":691},{"href":548,"dataGaName":549,"dataGaLocation":648},{"text":693,"config":694},"Status",{"href":695,"dataGaName":696,"dataGaLocation":648},"https://status.gitlab.com/","status",{"text":698,"config":699},"Terms of use",{"href":700,"dataGaName":701,"dataGaLocation":648},"/terms/","terms of use",{"text":703,"config":704},"Privacy statement",{"href":705,"dataGaName":706,"dataGaLocation":648},"/privacy/","privacy statement",{"text":708,"config":709},"Cookie preferences",{"dataGaName":710,"dataGaLocation":648,"id":711,"isOneTrustButton":189},"cookie preferences","ot-sdk-btn",{"title":255,"links":713,"subMenu":722},[714,718],{"text":715,"config":716},"DevSecOps platform",{"href":237,"dataGaName":717,"dataGaLocation":648},"devsecops platform",{"text":719,"config":720},"AI-Assisted Development",{"href":244,"dataGaName":721,"dataGaLocation":648},"ai-assisted development",[723],{"title":724,"links":725},"Topics",[726,731,736,741,746,751,756,761],{"text":727,"config":728},"CICD",{"href":729,"dataGaName":730,"dataGaLocation":648},"/topics/ci-cd/","cicd",{"text":732,"config":733},"GitOps",{"href":734,"dataGaName":735,"dataGaLocation":648},"/topics/gitops/","gitops",{"text":737,"config":738},"DevOps",{"href":739,"dataGaName":740,"dataGaLocation":648},"/topics/devops/","devops",{"text":742,"config":743},"Version Control",{"href":744,"dataGaName":745,"dataGaLocation":648},"/topics/version-control/","version control",{"text":747,"config":748},"DevSecOps",{"href":749,"dataGaName":750,"dataGaLocation":648},"/topics/devsecops/","devsecops",{"text":752,"config":753},"Cloud Native",{"href":754,"dataGaName":755,"dataGaLocation":648},"/topics/cloud-native/","cloud native",{"text":757,"config":758},"AI for Coding",{"href":759,"dataGaName":760,"dataGaLocation":648},"/topics/devops/ai-for-coding/","ai for coding",{"text":762,"config":763},"Agentic AI",{"href":764,"dataGaName":765,"dataGaLocation":648},"/topics/agentic-ai/","agentic ai",{"title":767,"links":768},"Solutions",[769,771,773,778,782,785,789,792,794,797,800,805],{"text":299,"config":770},{"href":294,"dataGaName":299,"dataGaLocation":648},{"text":288,"config":772},{"href":271,"dataGaName":272,"dataGaLocation":648},{"text":774,"config":775},"Agile development",{"href":776,"dataGaName":777,"dataGaLocation":648},"/solutions/agile-delivery/","agile delivery",{"text":779,"config":780},"SCM",{"href":284,"dataGaName":781,"dataGaLocation":648},"source code management",{"text":727,"config":783},{"href":277,"dataGaName":784,"dataGaLocation":648},"continuous integration & delivery",{"text":786,"config":787},"Value stream management",{"href":327,"dataGaName":788,"dataGaLocation":648},"value stream management",{"text":732,"config":790},{"href":791,"dataGaName":735,"dataGaLocation":648},"/solutions/gitops/",{"text":337,"config":793},{"href":340,"dataGaName":341,"dataGaLocation":648},{"text":795,"config":796},"Small business",{"href":346,"dataGaName":347,"dataGaLocation":648},{"text":798,"config":799},"Public sector",{"href":352,"dataGaName":353,"dataGaLocation":648},{"text":801,"config":802},"Education",{"href":803,"dataGaName":804,"dataGaLocation":648},"/solutions/education/","education",{"text":806,"config":807},"Financial services",{"href":808,"dataGaName":809,"dataGaLocation":648},"/solutions/finance/","financial services",{"title":360,"links":811},[812,814,816,818,821,823,826,828,830,832,834,836,838,840],{"text":373,"config":813},{"href":375,"dataGaName":376,"dataGaLocation":648},{"text":378,"config":815},{"href":380,"dataGaName":381,"dataGaLocation":648},{"text":383,"config":817},{"href":385,"dataGaName":386,"dataGaLocation":648},{"text":388,"config":819},{"href":390,"dataGaName":820,"dataGaLocation":648},"docs",{"text":411,"config":822},{"href":413,"dataGaName":414,"dataGaLocation":648},{"text":824,"config":825},"What's new",{"href":470,"dataGaName":471,"dataGaLocation":648},{"text":406,"config":827},{"href":408,"dataGaName":409,"dataGaLocation":648},{"text":425,"config":829},{"href":427,"dataGaName":428,"dataGaLocation":648},{"text":433,"config":831},{"href":435,"dataGaName":436,"dataGaLocation":648},{"text":438,"config":833},{"href":440,"dataGaName":441,"dataGaLocation":648},{"text":443,"config":835},{"href":445,"dataGaName":198,"dataGaLocation":648},{"text":447,"config":837},{"href":449,"dataGaName":450,"dataGaLocation":648},{"text":452,"config":839},{"href":454,"dataGaName":455,"dataGaLocation":648},{"text":457,"config":841},{"href":459,"dataGaName":460,"dataGaLocation":648},{"title":473,"links":843},[844,846,848,850,852,854,858,863,865,867,869],{"text":481,"config":845},{"href":483,"dataGaName":475,"dataGaLocation":648},{"text":486,"config":847},{"href":488,"dataGaName":489,"dataGaLocation":648},{"text":494,"config":849},{"href":496,"dataGaName":497,"dataGaLocation":648},{"text":499,"config":851},{"href":501,"dataGaName":502,"dataGaLocation":648},{"text":504,"config":853},{"href":506,"dataGaName":507,"dataGaLocation":648},{"text":855,"config":856},"Sustainability",{"href":857,"dataGaName":855,"dataGaLocation":648},"/sustainability/",{"text":859,"config":860},"Diversity, inclusion and belonging (DIB)",{"href":861,"dataGaName":862,"dataGaLocation":648},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":509,"config":864},{"href":511,"dataGaName":512,"dataGaLocation":648},{"text":519,"config":866},{"href":521,"dataGaName":522,"dataGaLocation":648},{"text":524,"config":868},{"href":526,"dataGaName":527,"dataGaLocation":648},{"text":870,"config":871},"Modern Slavery Transparency Statement",{"href":872,"dataGaName":873,"dataGaLocation":648},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":875},[876,879,882],{"text":877,"config":878},"Terms",{"href":700,"dataGaName":701,"dataGaLocation":648},{"text":880,"config":881},"Cookies",{"dataGaName":710,"dataGaLocation":648,"id":711,"isOneTrustButton":189},{"text":883,"config":884},"Privacy",{"href":705,"dataGaName":706,"dataGaLocation":648},[886],{"id":887,"title":7,"body":185,"config":888,"content":890,"description":185,"extension":893,"meta":894,"navigation":189,"path":895,"seo":896,"stem":897,"__hash__":898},"blogAuthors/en-us/blog/authors/ray-paik.yml",{"template":889},"BlogAuthor",{"name":7,"config":891},{"headshot":174,"ctfId":892},"rpaik","yml",{},"/en-us/blog/authors/ray-paik",{},"en-us/blog/authors/ray-paik","_Pg1KG9ipv34EW9ET2w-3983iQa3Hi75PNt5sR9aBdM",[900,908,916],{"title":901,"description":902,"heroImage":903,"category":181,"date":904,"authors":905,"slug":907,"externalUrl":185},"CEO Shadow Takeaways from Jacie","Recap of my experience in the CEO Shadow Program.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664102/Blog/Hero%20Images/gitlab-values-cover.png","2021-05-18",[906],"Jacie Bandur","ceo-shadow-recap",{"title":909,"description":910,"heroImage":911,"category":181,"date":912,"authors":913,"slug":915,"externalUrl":185},"Why I love contributing to GitLab","Making small meaningful changes is what it's all about.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679501/Blog/Hero%20Images/new-feature.png","2021-05-11",[914],"Austin Regnery","why-i-love-contributing-to-gitlab",{"title":917,"description":918,"heroImage":919,"category":181,"date":912,"authors":920,"slug":922,"externalUrl":185},"Placebo Lines on the Pipeline Graph","Have you noticed the connecting lines missing on your pipelines lately? Here's why","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679507/Blog/Hero%20Images/ci-cd.png",[921],"Sam Beckham","placebo-lines-on-the-pipeline-graph",{"promotions":924},[925,939,951,963],{"id":926,"categories":927,"header":929,"text":930,"button":931,"image":936},"ai-modernization",[928],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":932,"config":933},"Get your AI maturity score",{"href":934,"dataGaName":935,"dataGaLocation":414},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":937},{"src":938},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":940,"categories":941,"header":943,"text":930,"button":944,"image":948},"devops-modernization",[942,750],"product","Are you just managing tools or shipping innovation?",{"text":945,"config":946},"Get your DevOps maturity score",{"href":947,"dataGaName":935,"dataGaLocation":414},"/assessments/devops-modernization-assessment/",{"config":949},{"src":950},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":952,"categories":953,"header":955,"text":930,"button":956,"image":960},"security-modernization",[954],"security","Are you trading speed for security?",{"text":957,"config":958},"Get your security maturity score",{"href":959,"dataGaName":935,"dataGaLocation":414},"/assessments/security-modernization-assessment/",{"config":961},{"src":962},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":964,"paths":965,"header":968,"text":969,"button":970,"image":975},"github-azure-migration",[966,967],"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":971,"config":972},"See how GitLab compares to GitHub",{"href":973,"dataGaName":974,"dataGaLocation":414},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":976},{"src":950},{"header":978,"blurb":979,"button":980,"secondaryButton":985},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":981,"config":982},"Get your free trial",{"href":983,"dataGaName":213,"dataGaLocation":984},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":686,"config":986},{"href":538,"dataGaName":218,"dataGaLocation":984},1786803748182]