[{"data":1,"prerenderedAt":1033},["ShallowReactive",2],{"/blog/authors/rebecca-dodd":3,"navigation-en-us":20,"banner-en-us":448,"footer-en-us":459,"blog-author-posts-en-us-rebecca-dodd":704},{"id":4,"title":5,"body":6,"config":7,"content":9,"description":6,"extension":13,"meta":14,"navigation":15,"path":16,"seo":17,"stem":18,"__hash__":19},"blogAuthors/en-us/blog/authors/rebecca-dodd.yml","Rebecca Dodd",null,{"template":8},"BlogAuthor",{"name":5,"config":10},{"headshot":11,"ctfId":12},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","Rebecca-Dodd","yml",{},true,"/en-us/blog/authors/rebecca-dodd",{},"en-us/blog/authors/rebecca-dodd","Fqnz-zC5Rsc_ZMULQNrNPzwFh8Smy8g5utEqKK0NjJE",{"logo":21,"freeTrial":26,"sales":31,"login":36,"items":41,"search":368,"minimal":399,"duo":418,"switchNav":427,"pricingDeployment":438},{"config":22},{"href":23,"dataGaName":24,"dataGaLocation":25},"/","gitlab logo","header",{"text":27,"config":28},"Get free trial",{"href":29,"dataGaName":30,"dataGaLocation":25},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":32,"config":33},"Request a demo",{"href":34,"dataGaName":35,"dataGaLocation":25},"/sales/?contact-topic=request-demo","sales",{"text":37,"config":38},"Sign in",{"href":39,"dataGaName":40,"dataGaLocation":25},"https://gitlab.com/users/sign_in/","sign in",[42,71,171,176,290,346],{"text":43,"config":44,"menu":46},"Platform",{"dataNavLevelOne":45},"platform",{"type":47,"columns":48},"cards",[49,55,63],{"title":43,"description":50,"link":51},"The intelligent orchestration platform for DevSecOps",{"text":52,"config":53},"Explore our Platform",{"href":54,"dataGaName":45,"dataGaLocation":25},"/platform/",{"title":56,"description":57,"link":58},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":59,"config":60},"Meet GitLab Duo",{"href":61,"dataGaName":62,"dataGaLocation":25},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":64,"description":65,"link":66},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":67,"config":68},"Learn more",{"href":69,"dataGaName":70,"dataGaLocation":25},"/why-gitlab/","why gitlab",{"text":72,"left":15,"config":73,"menu":75},"Product",{"dataNavLevelOne":74},"solutions",{"type":76,"link":77,"columns":81,"feature":150},"lists",{"text":78,"config":79},"View all Solutions",{"href":80,"dataGaName":74,"dataGaLocation":25},"/solutions/",[82,106,129],{"title":83,"description":84,"link":85,"items":90},"Automation","CI/CD and automation to accelerate deployment",{"config":86},{"icon":87,"href":88,"dataGaName":89,"dataGaLocation":25},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[91,95,98,102],{"text":92,"config":93},"CI/CD",{"href":94,"dataGaLocation":25,"dataGaName":92},"/solutions/continuous-integration/",{"text":56,"config":96},{"href":61,"dataGaLocation":25,"dataGaName":97},"gitlab duo agent platform - product menu",{"text":99,"config":100},"Source Code Management",{"href":101,"dataGaLocation":25,"dataGaName":99},"/solutions/source-code-management/",{"text":103,"config":104},"Automated Software Delivery",{"href":88,"dataGaLocation":25,"dataGaName":105},"Automated software delivery",{"title":107,"description":108,"link":109,"items":114},"Security","Deliver code faster without compromising security",{"config":110},{"href":111,"dataGaName":112,"dataGaLocation":25,"icon":113},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[115,119,124],{"text":116,"config":117},"Application Security Testing",{"href":111,"dataGaName":118,"dataGaLocation":25},"Application security testing",{"text":120,"config":121},"Software Supply Chain Security",{"href":122,"dataGaLocation":25,"dataGaName":123},"/solutions/supply-chain/","Software supply chain security",{"text":125,"config":126},"Software Compliance",{"href":127,"dataGaName":128,"dataGaLocation":25},"/solutions/software-compliance/","software compliance",{"title":130,"link":131,"items":136},"Measurement",{"config":132},{"icon":133,"href":134,"dataGaName":135,"dataGaLocation":25},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[137,141,145],{"text":138,"config":139},"Visibility & Measurement",{"href":134,"dataGaLocation":25,"dataGaName":140},"Visibility and Measurement",{"text":142,"config":143},"Value Stream Management",{"href":144,"dataGaLocation":25,"dataGaName":142},"/solutions/value-stream-management/",{"text":146,"config":147},"Analytics & Insights",{"href":148,"dataGaLocation":25,"dataGaName":149},"/solutions/analytics-and-insights/","Analytics and insights",{"title":151,"type":76,"items":152},"GitLab for",[153,159,165],{"text":154,"config":155},"Enterprise",{"icon":156,"href":157,"dataGaLocation":25,"dataGaName":158},"Building","/enterprise/","enterprise",{"text":160,"config":161},"Small Business",{"icon":162,"href":163,"dataGaLocation":25,"dataGaName":164},"Work","/small-business/","small business",{"text":166,"config":167},"Public Sector",{"icon":168,"href":169,"dataGaLocation":25,"dataGaName":170},"Organization","/solutions/public-sector/","public sector",{"text":172,"config":173},"Pricing",{"href":174,"dataGaName":175,"dataGaLocation":25,"dataNavLevelOne":175},"/pricing/","pricing",{"text":177,"config":178,"menu":180},"Resources",{"dataNavLevelOne":179},"resources",{"type":76,"link":181,"columns":185,"feature":279},{"text":182,"config":183},"View all resources",{"href":184,"dataGaName":179,"dataGaLocation":25},"/resources/",[186,219,246],{"title":187,"items":188},"Getting started",[189,194,199,204,209,214],{"text":190,"config":191},"Install",{"href":192,"dataGaName":193,"dataGaLocation":25},"/install/","install",{"text":195,"config":196},"Quick start guides",{"href":197,"dataGaName":198,"dataGaLocation":25},"/get-started/","quick setup checklists",{"text":200,"config":201},"Learn",{"href":202,"dataGaLocation":25,"dataGaName":203},"https://university.gitlab.com/","learn",{"text":205,"config":206},"Product documentation",{"href":207,"dataGaName":208,"dataGaLocation":25},"https://docs.gitlab.com/","product documentation",{"text":210,"config":211},"Best practice videos",{"href":212,"dataGaName":213,"dataGaLocation":25},"/getting-started-videos/","best practice videos",{"text":215,"config":216},"Integrations",{"href":217,"dataGaName":218,"dataGaLocation":25},"/integrations/","integrations",{"title":220,"items":221},"Discover",[222,227,232,237,241],{"text":223,"config":224},"Customer success stories",{"href":225,"dataGaName":226,"dataGaLocation":25},"/customers/","customer success stories",{"text":228,"config":229},"Blog",{"href":230,"dataGaName":231,"dataGaLocation":25},"/blog/","blog",{"text":233,"config":234},"Demo Hub",{"href":235,"dataGaName":236,"dataGaLocation":25},"/demo-hub/","demo hub",{"text":238,"config":239},"The Source",{"href":240,"dataGaName":231,"dataGaLocation":25},"/the-source/",{"text":242,"config":243},"Remote",{"href":244,"dataGaName":245,"dataGaLocation":25},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":247,"items":248},"Connect",[249,254,259,264,269,274],{"text":250,"config":251},"GitLab Services",{"href":252,"dataGaName":253,"dataGaLocation":25},"/services/","services",{"text":255,"config":256},"Contribute",{"href":257,"dataGaName":258,"dataGaLocation":25},"https://contributors.gitlab.com","contribute",{"text":260,"config":261},"Community",{"href":262,"dataGaName":263,"dataGaLocation":25},"/community/","community",{"text":265,"config":266},"Forum",{"href":267,"dataGaName":268,"dataGaLocation":25},"https://forum.gitlab.com/","forum",{"text":270,"config":271},"Events",{"href":272,"dataGaName":273,"dataGaLocation":25},"/events/","events",{"text":275,"config":276},"Partners",{"href":277,"dataGaName":278,"dataGaLocation":25},"/partners/","partners",{"config":280,"title":283,"text":284,"link":285},{"background":281,"textColor":282},"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":286,"config":287},"Read the latest",{"href":288,"dataGaName":289,"dataGaLocation":25},"/whats-new/","whats new",{"text":291,"config":292,"menu":294},"Company",{"dataNavLevelOne":293},"company",{"type":76,"columns":295},[296],{"items":297},[298,303,309,311,316,321,326,331,336,341],{"text":299,"config":300},"About",{"href":301,"dataGaName":302,"dataGaLocation":25},"/company/","about",{"text":304,"config":305,"footerGa":308},"Jobs",{"href":306,"dataGaName":307,"dataGaLocation":25},"/jobs/","jobs",{"dataGaName":307},{"text":270,"config":310},{"href":272,"dataGaName":273,"dataGaLocation":25},{"text":312,"config":313},"Leadership",{"href":314,"dataGaName":315,"dataGaLocation":25},"/company/team/e-group/","leadership",{"text":317,"config":318},"Handbook",{"href":319,"dataGaName":320,"dataGaLocation":25},"https://handbook.gitlab.com/","handbook",{"text":322,"config":323},"Investor relations",{"href":324,"dataGaName":325,"dataGaLocation":25},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":327,"config":328},"Trust Center",{"href":329,"dataGaName":330,"dataGaLocation":25},"/security/","trust center",{"text":332,"config":333},"AI Transparency Center",{"href":334,"dataGaName":335,"dataGaLocation":25},"/ai-transparency-center/","ai transparency center",{"text":337,"config":338},"Newsletter",{"href":339,"dataGaName":340,"dataGaLocation":25},"/company/contact/#contact-forms","newsletter",{"text":342,"config":343},"Press",{"href":344,"dataGaName":345,"dataGaLocation":25},"/press/","press",{"text":347,"config":348,"menu":349},"Contact us",{"dataNavLevelOne":293},{"type":76,"columns":350},[351],{"items":352},[353,358,363],{"text":354,"config":355},"Talk to sales",{"href":356,"dataGaName":357,"dataGaLocation":25},"/sales/","talk to sales",{"text":359,"config":360},"Support portal",{"href":361,"dataGaName":362,"dataGaLocation":25},"https://support.gitlab.com/hc/en-us","support portal",{"text":364,"config":365},"Customer portal",{"href":366,"dataGaName":367,"dataGaLocation":25},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":369,"login":370,"suggestions":377},"Close",{"text":371,"link":372},"To search repositories and projects, login to",{"text":373,"config":374},"gitlab.com",{"href":39,"dataGaName":375,"dataGaLocation":376},"search login","search",{"text":378,"default":379},"Suggestions",[380,382,386,388,392,396],{"text":56,"config":381},{"href":61,"dataGaName":56,"dataGaLocation":376},{"text":383,"config":384},"Code Suggestions (AI)",{"href":385,"dataGaName":383,"dataGaLocation":376},"/solutions/code-suggestions/",{"text":92,"config":387},{"href":94,"dataGaName":92,"dataGaLocation":376},{"text":389,"config":390},"GitLab on AWS",{"href":391,"dataGaName":389,"dataGaLocation":376},"/partners/technology-partners/aws/",{"text":393,"config":394},"GitLab on Google Cloud",{"href":395,"dataGaName":393,"dataGaLocation":376},"/partners/technology-partners/google-cloud-platform/",{"text":397,"config":398},"Why GitLab?",{"href":69,"dataGaName":397,"dataGaLocation":376},{"freeTrial":400,"mobileIcon":405,"desktopIcon":410,"secondaryButton":413},{"text":401,"config":402},"Start free trial",{"href":403,"dataGaName":30,"dataGaLocation":404},"https://gitlab.com/-/trials/new/","nav",{"altText":406,"config":407},"Gitlab Icon",{"src":408,"dataGaName":409,"dataGaLocation":404},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":406,"config":411},{"src":412,"dataGaName":409,"dataGaLocation":404},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":414,"config":415},"Get Started",{"href":416,"dataGaName":417,"dataGaLocation":404},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":419,"mobileIcon":423,"desktopIcon":425},{"text":420,"config":421},"Learn more about GitLab Duo",{"href":61,"dataGaName":422,"dataGaLocation":404},"gitlab duo",{"altText":406,"config":424},{"src":408,"dataGaName":409,"dataGaLocation":404},{"altText":406,"config":426},{"src":412,"dataGaName":409,"dataGaLocation":404},{"button":428,"mobileIcon":433,"desktopIcon":435},{"text":429,"config":430},"/switch",{"href":431,"dataGaName":432,"dataGaLocation":404},"#contact","switch",{"altText":406,"config":434},{"src":408,"dataGaName":409,"dataGaLocation":404},{"altText":406,"config":436},{"src":437,"dataGaName":409,"dataGaLocation":404},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":439,"mobileIcon":444,"desktopIcon":446},{"text":440,"config":441},"Back to pricing",{"href":174,"dataGaName":442,"dataGaLocation":404,"icon":443},"back to pricing","GoBack",{"altText":406,"config":445},{"src":408,"dataGaName":409,"dataGaLocation":404},{"altText":406,"config":447},{"src":412,"dataGaName":409,"dataGaLocation":404},{"title":449,"titleMobile":450,"button":451,"config":456},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":67,"config":452},{"href":453,"dataGaName":454,"dataGaLocation":455},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":457,"disabled":458},"release",false,{"data":460},{"text":461,"source":462,"edit":468,"contribute":473,"config":478,"items":483,"minimal":693},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":463,"config":464},"View page source",{"href":465,"dataGaName":466,"dataGaLocation":467},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":469,"config":470},"Edit this page",{"href":471,"dataGaName":472,"dataGaLocation":467},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":474,"config":475},"Please contribute",{"href":476,"dataGaName":477,"dataGaLocation":467},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":479,"facebook":480,"youtube":481,"linkedin":482},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[484,531,585,629,661],{"title":172,"links":485,"subMenu":500},[486,490,495],{"text":487,"config":488},"View plans",{"href":174,"dataGaName":489,"dataGaLocation":467},"view plans",{"text":491,"config":492},"Why Premium?",{"href":493,"dataGaName":494,"dataGaLocation":467},"/pricing/premium/","why premium",{"text":496,"config":497},"Why Ultimate?",{"href":498,"dataGaName":499,"dataGaLocation":467},"/pricing/ultimate/","why ultimate",[501],{"title":502,"links":503},"Contact Us",[504,507,509,511,516,521,526],{"text":505,"config":506},"Contact sales",{"href":356,"dataGaName":35,"dataGaLocation":467},{"text":359,"config":508},{"href":361,"dataGaName":362,"dataGaLocation":467},{"text":364,"config":510},{"href":366,"dataGaName":367,"dataGaLocation":467},{"text":512,"config":513},"Status",{"href":514,"dataGaName":515,"dataGaLocation":467},"https://status.gitlab.com/","status",{"text":517,"config":518},"Terms of use",{"href":519,"dataGaName":520,"dataGaLocation":467},"/terms/","terms of use",{"text":522,"config":523},"Privacy statement",{"href":524,"dataGaName":525,"dataGaLocation":467},"/privacy/","privacy statement",{"text":527,"config":528},"Cookie preferences",{"dataGaName":529,"dataGaLocation":467,"id":530,"isOneTrustButton":15},"cookie preferences","ot-sdk-btn",{"title":72,"links":532,"subMenu":541},[533,537],{"text":534,"config":535},"DevSecOps platform",{"href":54,"dataGaName":536,"dataGaLocation":467},"devsecops platform",{"text":538,"config":539},"AI-Assisted Development",{"href":61,"dataGaName":540,"dataGaLocation":467},"ai-assisted development",[542],{"title":543,"links":544},"Topics",[545,550,555,560,565,570,575,580],{"text":546,"config":547},"CICD",{"href":548,"dataGaName":549,"dataGaLocation":467},"/topics/ci-cd/","cicd",{"text":551,"config":552},"GitOps",{"href":553,"dataGaName":554,"dataGaLocation":467},"/topics/gitops/","gitops",{"text":556,"config":557},"DevOps",{"href":558,"dataGaName":559,"dataGaLocation":467},"/topics/devops/","devops",{"text":561,"config":562},"Version Control",{"href":563,"dataGaName":564,"dataGaLocation":467},"/topics/version-control/","version control",{"text":566,"config":567},"DevSecOps",{"href":568,"dataGaName":569,"dataGaLocation":467},"/topics/devsecops/","devsecops",{"text":571,"config":572},"Cloud Native",{"href":573,"dataGaName":574,"dataGaLocation":467},"/topics/cloud-native/","cloud native",{"text":576,"config":577},"AI for Coding",{"href":578,"dataGaName":579,"dataGaLocation":467},"/topics/devops/ai-for-coding/","ai for coding",{"text":581,"config":582},"Agentic AI",{"href":583,"dataGaName":584,"dataGaLocation":467},"/topics/agentic-ai/","agentic ai",{"title":586,"links":587},"Solutions",[588,590,592,597,601,604,608,611,613,616,619,624],{"text":116,"config":589},{"href":111,"dataGaName":116,"dataGaLocation":467},{"text":105,"config":591},{"href":88,"dataGaName":89,"dataGaLocation":467},{"text":593,"config":594},"Agile development",{"href":595,"dataGaName":596,"dataGaLocation":467},"/solutions/agile-delivery/","agile delivery",{"text":598,"config":599},"SCM",{"href":101,"dataGaName":600,"dataGaLocation":467},"source code management",{"text":546,"config":602},{"href":94,"dataGaName":603,"dataGaLocation":467},"continuous integration & delivery",{"text":605,"config":606},"Value stream management",{"href":144,"dataGaName":607,"dataGaLocation":467},"value stream management",{"text":551,"config":609},{"href":610,"dataGaName":554,"dataGaLocation":467},"/solutions/gitops/",{"text":154,"config":612},{"href":157,"dataGaName":158,"dataGaLocation":467},{"text":614,"config":615},"Small business",{"href":163,"dataGaName":164,"dataGaLocation":467},{"text":617,"config":618},"Public sector",{"href":169,"dataGaName":170,"dataGaLocation":467},{"text":620,"config":621},"Education",{"href":622,"dataGaName":623,"dataGaLocation":467},"/solutions/education/","education",{"text":625,"config":626},"Financial services",{"href":627,"dataGaName":628,"dataGaLocation":467},"/solutions/finance/","financial services",{"title":177,"links":630},[631,633,635,637,640,642,645,647,649,651,653,655,657,659],{"text":190,"config":632},{"href":192,"dataGaName":193,"dataGaLocation":467},{"text":195,"config":634},{"href":197,"dataGaName":198,"dataGaLocation":467},{"text":200,"config":636},{"href":202,"dataGaName":203,"dataGaLocation":467},{"text":205,"config":638},{"href":207,"dataGaName":639,"dataGaLocation":467},"docs",{"text":228,"config":641},{"href":230,"dataGaName":231,"dataGaLocation":467},{"text":643,"config":644},"What's new",{"href":288,"dataGaName":289,"dataGaLocation":467},{"text":223,"config":646},{"href":225,"dataGaName":226,"dataGaLocation":467},{"text":242,"config":648},{"href":244,"dataGaName":245,"dataGaLocation":467},{"text":250,"config":650},{"href":252,"dataGaName":253,"dataGaLocation":467},{"text":255,"config":652},{"href":257,"dataGaName":258,"dataGaLocation":467},{"text":260,"config":654},{"href":262,"dataGaName":263,"dataGaLocation":467},{"text":265,"config":656},{"href":267,"dataGaName":268,"dataGaLocation":467},{"text":270,"config":658},{"href":272,"dataGaName":273,"dataGaLocation":467},{"text":275,"config":660},{"href":277,"dataGaName":278,"dataGaLocation":467},{"title":291,"links":662},[663,665,667,669,671,673,677,682,684,686,688],{"text":299,"config":664},{"href":301,"dataGaName":293,"dataGaLocation":467},{"text":304,"config":666},{"href":306,"dataGaName":307,"dataGaLocation":467},{"text":312,"config":668},{"href":314,"dataGaName":315,"dataGaLocation":467},{"text":317,"config":670},{"href":319,"dataGaName":320,"dataGaLocation":467},{"text":322,"config":672},{"href":324,"dataGaName":325,"dataGaLocation":467},{"text":674,"config":675},"Sustainability",{"href":676,"dataGaName":674,"dataGaLocation":467},"/sustainability/",{"text":678,"config":679},"Diversity, inclusion and belonging (DIB)",{"href":680,"dataGaName":681,"dataGaLocation":467},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":327,"config":683},{"href":329,"dataGaName":330,"dataGaLocation":467},{"text":337,"config":685},{"href":339,"dataGaName":340,"dataGaLocation":467},{"text":342,"config":687},{"href":344,"dataGaName":345,"dataGaLocation":467},{"text":689,"config":690},"Modern Slavery Transparency Statement",{"href":691,"dataGaName":692,"dataGaLocation":467},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":694},[695,698,701],{"text":696,"config":697},"Terms",{"href":519,"dataGaName":520,"dataGaLocation":467},{"text":699,"config":700},"Cookies",{"dataGaName":529,"dataGaLocation":467,"id":530,"isOneTrustButton":15},{"text":702,"config":703},"Privacy",{"href":524,"dataGaName":525,"dataGaLocation":467},[705,713,721,728,737,745,752,758,766,774,781,788,796,803,810,817,824,831,838,845,851,858,865,872,879,886,893,900,907,914,921,928,935,942,949,956,963,970,977,984,991,998,1005,1012,1019,1026],{"title":706,"heroImage":707,"category":708,"description":709,"authors":710,"date":711,"slug":712,"externalUrl":6},"3 Debugging tips we learned from you","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663397/Blog/Hero%20Images/logoforblogpost.jpg","engineering","We asked for your most unexpected causes of bugs. Here's what we learned.",[5],"2021-03-31","3-debugging-tips-we-learned-from-you",{"title":714,"heroImage":715,"category":716,"description":717,"authors":718,"date":719,"slug":720,"externalUrl":6},"4 tips for agile remote pair programming","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749677856/Blog/Hero%20Images/collaboration.png","culture","Pair programming is great for remote collaboration. Our remote pairing enthusiasts share how to make the most of it.",[5],"2021-02-04","remote-pair-programming-tips",{"title":722,"heroImage":723,"category":716,"description":724,"authors":725,"date":726,"slug":727,"externalUrl":6},"Welcome to the home of GitLab Unfiltered","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664102/Blog/Hero%20Images/gitlab-values-cover.png","The GitLab Unfiltered blog is user-generated content by the GitLab team.",[5],"2019-08-20","welcome-to-gitlab-unfiltered",{"title":729,"heroImage":730,"category":731,"description":732,"authors":733,"date":735,"slug":736,"externalUrl":6},"Monkton's #movingtogitlab story: Going all in on automation and repeatability","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670123/Blog/Hero%20Images/moving-to-gitlab-cover.png","insights","Monkton is migrating from a suite of disparate tools to GitLab, enabling them to better help their customers build safe, secure mobile apps.",[5,734],"Aricka Flowers","2019-05-21","monkton-moves-to-gitlab-customer-story",{"title":738,"heroImage":739,"category":293,"description":740,"authors":741,"date":743,"slug":744,"externalUrl":6},"2018: GitLab's year in review","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670162/Blog/Hero%20Images/happy-holidays-cover.png","Take a look at the highlight reel from 2018 – from landing $100M in funding to welcoming a host of great open source projects to GitLab.",[742,5],"Emily von Hoffmann","2019-01-10","gitlab-2018-year-in-review",{"title":746,"heroImage":747,"category":293,"description":748,"authors":749,"date":750,"slug":751,"externalUrl":6},"Customer story: Driving better developer and customer experiences with a single application","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663655/Blog/Hero%20Images/gitlab-live-sept-2018.png","Director of Product Integration Michael Sobota of Charter Communications shares how they're using GitLab to simplify their toolchain, with big results.",[5],"2018-09-26","customer-interview-charter-communications",{"title":753,"heroImage":747,"category":293,"description":754,"authors":755,"date":756,"slug":757,"externalUrl":6},"Here's what went down at #GitLabLive","We went live today to discuss our $100m Series D funding and what's next for GitLab – catch up on the recording here.",[5],"2018-09-20","gitlab-live-event-recap",{"title":759,"heroImage":760,"category":293,"description":761,"authors":762,"date":764,"slug":765,"externalUrl":6},"Salani kakuhle (bye!) and thanks for a great summit in Cape Town!","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670482/Blog/Hero%20Images/summit_recap_pic_post.jpg","And just like that, it was all over. Check out the highlights and keynote from our recent summit in South Africa.",[763,5],"Daisy Miclat","2018-09-14","gitlab-summit-cape-town-recap",{"title":767,"heroImage":768,"category":769,"description":770,"authors":771,"date":772,"slug":773,"externalUrl":6},"Welcome to GitLab, freedesktop.org!","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671252/Blog/Hero%20Images/gitlab-desktop-org-cover.png","open-source","Freedesktop.org, the home of open source desktop technology development, has migrated to GitLab to improve their workflow and modernize their service.",[5],"2018-08-20","freedesktop-org-migrates-to-gitlab",{"title":775,"heroImage":776,"category":708,"description":777,"authors":778,"date":779,"slug":780,"externalUrl":6},"A 5-minute Markdown tutorial","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671172/Blog/Hero%20Images/markdown-tutorial-cover.png","New to GitLab? New to Markdown? Here's a quick explainer on using Markdown to format text all over GitLab.",[5],"2018-08-17","gitlab-markdown-tutorial",{"title":782,"heroImage":783,"category":769,"description":784,"authors":785,"date":786,"slug":787,"externalUrl":6},"Come on in! Drupal is moving to GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671386/Blog/Hero%20Images/drupal-cover.png","Free and open source platform Drupal is moving to GitLab to accelerate developer velocity and attract new talent and contributors to the project.",[5],"2018-08-16","drupal-moves-to-gitlab",{"title":789,"heroImage":790,"category":791,"description":792,"authors":793,"date":794,"slug":795,"externalUrl":6},"How Jaguar Land Rover embraced CI to speed up their software lifecycle","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667619/Blog/Hero%20Images/chris-hill-jlr-does.jpg","customer-stories","Inspiration, persistence, an attitude of continuous improvement – how adopting CI helped this vehicle company implement software over the air.",[5],"2018-07-23","chris-hill-devops-enterprise-summit-talk",{"title":797,"heroImage":798,"category":293,"description":799,"authors":800,"date":801,"slug":802,"externalUrl":6},"Netlify CMS launches support for GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671196/Blog/Hero%20Images/gitlab-netlify-cover.png","Make it even easier to bring developers and content creators together, so everyone can contribute.",[5],"2018-06-13","netlify-launches-gitlab-support",{"title":804,"heroImage":805,"category":769,"description":806,"authors":807,"date":808,"slug":809,"externalUrl":6},"GNOME, welcome to GitLab!","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671276/Blog/Hero%20Images/gitlab-gnome.png","We’re excited to welcome free software project GNOME to the GitLab community.",[5],"2018-05-31","welcome-gnome-to-gitlab",{"title":811,"heroImage":812,"category":293,"description":813,"authors":814,"date":815,"slug":816,"externalUrl":6},"GitLab + Google Cloud Platform = simplified, scalable deployment","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671280/Blog/Hero%20Images/gitlab-gke-integration-cover.png","We’ve teamed up with Google Cloud Platform – here’s what that means for you.",[5],"2018-04-05","gke-gitlab-integration",{"title":818,"heroImage":819,"category":731,"description":820,"authors":821,"date":822,"slug":823,"externalUrl":6},"How to avoid the DevOps tax","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670214/Blog/Hero%20Images/devops-nova-scotia-cover.jpg","Realize a faster DevOps lifecycle with these best practices for integration and automation – watch our recent webcast with guest speaker Forrester Senior Analyst Christoper Condo and GitLab Head of Product Mark Pundsack.",[5],"2018-03-21","avoiding-devops-tax-webcast",{"title":825,"heroImage":826,"category":731,"description":827,"authors":828,"date":829,"slug":830,"externalUrl":6},"Automate to accelerate: What you need to know about test and release automation","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671288/Blog/Hero%20Images/gitlab-live-event.png","If you’re not using automated testing, your competitors almost certainly are – catch up on our recent webcast to get started.",[5],"2017-12-08","automate-to-accelerate-webcast-recap",{"title":832,"heroImage":833,"category":708,"description":834,"authors":835,"date":836,"slug":837,"externalUrl":6},"Kubernetes & containers, and where cloud native fits in – the basics","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671296/Blog/Hero%20Images/containers-kubernetes-basics.jpg","Brush up on your understanding of these concepts key to modern development.",[5],"2017-11-30","containers-kubernetes-basics",{"title":839,"heroImage":840,"category":716,"description":841,"authors":842,"date":843,"slug":844,"externalUrl":6},"Cross-functional ≠ dysfunctional","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671305/Blog/Hero%20Images/tasktop-integration-cover.png","Don't let process hold you back – here are our best practices for working cross-functionally.",[5],"2017-11-08","tasktop-webcast-recap",{"title":846,"heroImage":840,"category":293,"description":847,"authors":848,"date":849,"slug":850,"externalUrl":6},"One step closer to DevOps success with GitLab + Tasktop","Good news for enterprise devs: flow GitLab Issues into your Agile tool for greater visibility and collaboration.",[5],"2017-09-15","tasktop-gitlab-integration",{"title":852,"heroImage":853,"category":769,"description":854,"authors":855,"date":856,"slug":857,"externalUrl":6},"Today is GitLab Fan Day","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671316/Blog/Hero%20Images/gitlab-fan-day.png","Join us in celebrating our most mysterious evangelist, GitLab Fan.",[5],"2017-09-07","gitlab-fan-profile",{"title":859,"heroImage":860,"category":293,"description":861,"authors":862,"date":863,"slug":864,"externalUrl":6},"There's a Zap for that. Automate your workflows with GitLab + Zapier","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671323/Blog/Hero%20Images/zapier-gitlab-integration.jpg","With Zapier's GitLab integration you can create new Issues directly from within Gmail, get Slack notifications for new Issues and much more.",[5],"2017-08-23","gitlab-zapier-integration",{"title":866,"heroImage":867,"category":293,"description":868,"authors":869,"date":870,"slug":871,"externalUrl":6},"Demo: Turn-key Kubernetes with StackPoint.io","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671181/Blog/Hero%20Images/stackpoint-gitlab-integration.png","StackPointCloud CEO Matt Baldwin shows how GitLab users can now go even faster from idea to production with an integration that takes the pain out of building Kubernetes clusters.",[5],"2017-08-03","stackpoint-webcast-recording-highlights",{"title":873,"heroImage":874,"category":293,"description":875,"authors":876,"date":877,"slug":878,"externalUrl":6},"You asked, you got it: GitLab Power-Up comes to Trello","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671369/Blog/Hero%20Images/trello-power-up-blog-cover.png","With 9.4 we shipped a GitLab Power-Up for Trello – attach a merge request to a Trello card and enjoy an even more seamless workflow.",[5],"2017-07-22","gitlab-trello-power-up-launch",{"title":880,"heroImage":881,"category":769,"description":882,"authors":883,"date":884,"slug":885,"externalUrl":6},"We're one of the 30 Highest Velocity Open Source Projects","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671330/Blog/Hero%20Images/highest-velocity-open-source-projects.jpg","With a magical combination of number of commits, authors, issues and merge requests, we're in great company with other open source projects with momentum.",[5],"2017-07-06","gitlab-top-30-highest-velocity-open-source",{"title":887,"heroImage":888,"category":731,"description":889,"authors":890,"date":891,"slug":892,"externalUrl":6},"Why deadlines get missed (and how to fix it)","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671344/Blog/Hero%20Images/obstacles-to-getting-work-done.jpg","These are the biggest obstacles preventing developers from getting work done – and how to tackle them.",[5],"2017-06-27","biggest-obstacles-to-getting-work-done",{"title":894,"heroImage":895,"category":716,"description":896,"authors":897,"date":898,"slug":899,"externalUrl":6},"How to shorten the conversation cycle","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671350/Blog/Hero%20Images/shorten-conversation-cycle.jpg","Four simple steps to move faster from idea to production.",[5],"2017-06-19","how-to-shorten-conversation-cycle",{"title":901,"heroImage":902,"category":716,"description":903,"authors":904,"date":905,"slug":906,"externalUrl":6},"3 Ways to foster collaboration","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669991/Blog/Hero%20Images/ways-to-encourage-collaboration.jpg","Want to know how we encourage everyone to contribute?",[5],"2017-06-12","ways-to-encourage-collaboration",{"title":908,"heroImage":909,"category":716,"description":910,"authors":911,"date":912,"slug":913,"externalUrl":6},"9 Attributes of successful development teams","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671496/Blog/Hero%20Images/attributes-successful-dev-teams.jpg","What makes a good development team? Here's what we think.",[5],"2017-05-23","attributes-of-successful-development-teams",{"title":915,"heroImage":916,"category":731,"description":917,"authors":918,"date":919,"slug":920,"externalUrl":6},"What to look for in a continuous integration tool","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671489/Blog/Hero%20Images/what-to-look-for-ci-cd.jpg","With so many options out there, here's what you need to weigh up when deciding on a CI/CD tool.",[5],"2017-05-08","what-to-look-for-in-ci-cd-solution",{"title":922,"heroImage":923,"category":731,"description":924,"authors":925,"date":926,"slug":927,"externalUrl":6},"Why code gets released too early (and how to fix it)","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671476/Blog/Hero%20Images/code-released-too-early.jpg","More than half of developers say they release code prematurely. What can you do about it?",[5],"2017-04-27","why-code-is-released-too-early",{"title":929,"heroImage":930,"category":731,"description":931,"authors":932,"date":933,"slug":934,"externalUrl":6},"What to look for in a Git management solution","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671466/Blog/Hero%20Images/how-to-choose-a-git-management-system.jpg","You've decided to make the move to Git. Now what?",[5],"2017-04-20","choosing-git-management-solution",{"title":936,"heroImage":937,"category":708,"description":938,"authors":939,"date":940,"slug":941,"externalUrl":6},"Demo: cloud native development with GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671482/Blog/Hero%20Images/cloud-native-demo.png","See how you can leverage the power of the cloud with GitLab 9.0.",[5],"2017-04-18","cloud-native-demo",{"title":943,"heroImage":944,"category":731,"description":945,"authors":946,"date":947,"slug":948,"externalUrl":6},"3 Ways CI/CD helps your team","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671461/Blog/Hero%20Images/ways-ci-cd-helps.jpg","CI/CD frees up your team to spend their time on developing features customers want.",[5],"2017-04-12","ways-ci-cd-helps",{"title":950,"heroImage":951,"category":731,"description":952,"authors":953,"date":954,"slug":955,"externalUrl":6},"Why collaboration tools matter more than ever","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671447/Blog/Hero%20Images/collaboration-tools-matter.jpg","Nearly two-thirds of developers say that chat and collaboration tools are integral to their everyday work. Here’s why.",[5],"2017-04-04","why-collaboration-tools-matter",{"title":957,"heroImage":958,"category":731,"description":959,"authors":960,"date":961,"slug":962,"externalUrl":6},"Complete, but never finished/:/ Review Apps","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671443/Blog/Hero%20Images/review_apps_cover.png","Find out how we used a continuous approach to release Review Apps early and improve on it in small iterations.",[5],"2017-03-21","review-apps-continuous-case-study",{"title":964,"heroImage":965,"category":708,"description":966,"authors":967,"date":968,"slug":969,"externalUrl":6},"Demo: CI/CD with GitLab in action","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661856/Blog/Hero%20Images/ci-cd-demo.jpg","Watch our video to see how to get started using CI/CD with GitLab.",[5],"2017-03-13","ci-cd-demo",{"title":971,"heroImage":972,"category":716,"description":973,"authors":974,"date":975,"slug":976,"externalUrl":6},"3 Tips for introducing continuous workflows to your development process","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671434/Blog/Hero%20Images/introducing-continuous-workflows.jpg","Continuous doesn’t stop at integration – here's how to use it to your advantage throughout your development process.",[5],"2017-03-06","introduce-continuous-workflows",{"title":978,"heroImage":979,"category":769,"description":980,"authors":981,"date":982,"slug":983,"externalUrl":6},"Why more companies are adopting open source technology","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671390/Blog/Hero%20Images/developers-choose-open-source.jpg","The results are in – our 2016 Global Developer Survey revealed that open source tools are most preferred by developers the world over. Why?",[5],"2017-03-03","why-choose-open-source",{"title":985,"heroImage":986,"category":731,"description":987,"authors":988,"date":989,"slug":990,"externalUrl":6},"Continuous integration: A tool developers expect","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671420/Blog/Hero%20Images/ci-nice-to-have-post.png","77% of developers say Continuous Integration is integral to their everyday work – we break down what that means.",[5],"2017-02-22","ci-integral-to-everyday-work",{"title":992,"heroImage":993,"category":293,"description":994,"authors":995,"date":996,"slug":997,"externalUrl":6},"Tower launches GitLab integration on Windows","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671402/Blog/Hero%20Images/gitlab-tower-integration-puzzle.jpg","Windows users can now manage their GitLab accounts right within Tower – give it a try with 20% off.",[5],"2017-01-20","gitlab-tower-integration-coupon-code",{"title":999,"heroImage":1000,"category":731,"description":1001,"authors":1002,"date":1003,"slug":1004,"externalUrl":6},"GitLab and Gravitational discuss Kubernetes","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683941/Blog/Hero%20Images/ship-steering-wheel-kubernetes.jpg","Is Kubernetes the way forward? We chatted to Ev Kontsevoy, CEO of Gravitational and unofficial Kubernetes cheerleader, to get the lowdown",[5],"2016-12-12","gitlab-joins-forces-with-gravitational",{"title":1006,"heroImage":1007,"category":293,"description":1008,"authors":1009,"date":1010,"slug":1011,"externalUrl":6},"How to evaluate GitLab during an EE trial","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683936/Blog/Hero%20Images/i-love-spreadsheets-trial-evaluation.jpg","Find out if GitLab EE is the right fit for your company by evaluating your free trial with this handy spreadsheet",[5],"2016-12-09","how-to-evaluate-gitlab-during-ee-trial",{"title":1013,"heroImage":1014,"category":716,"description":1015,"authors":1016,"date":1017,"slug":1018,"externalUrl":6},"How we stay connected as a remote company","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749684130/Blog/Hero%20Images/how-we-stay-connected-as-a-remote-company-globe.jpg","Open communication and strong relationships are key to our company culture – here's how we achieve these remotely",[5],"2016-12-05","how-we-stay-connected-as-a-remote-company",{"title":1020,"heroImage":1021,"category":293,"description":1022,"authors":1023,"date":1024,"slug":1025,"externalUrl":6},"How to explain GitLab to anyone","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749684725/Blog/Hero%20Images/explain-gitlab-cover.jpg","How do you explain what GitLab is and how it works to a non-technical person?",[5],"2016-11-30","how-to-explain-gitlab-to-anyone",{"title":1027,"heroImage":1028,"category":293,"description":1029,"authors":1030,"date":1031,"slug":1032,"externalUrl":6},"Join our December Issue Bash","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749684134/Blog/Hero%20Images/issue-bash.jpg","We’re on a mission to blitz GitLab’s open issues and we need your help!",[5],"2016-11-28","join-our-december-issue-bash",1786803744585]