[{"data":1,"prerenderedAt":925},["ShallowReactive",2],{"/blog/git-not-just-for-developers":3,"navigation-en-us":127,"banner-en-us":555,"footer-en-us":565,"blog-post-authors-en-us-Opher Vishnia|Roy Taragan":810,"blog-related-posts-en-us-git-not-just-for-developers":836,"blog-promotions-en-us":861,"next-steps-en-us":915},{"id":4,"title":5,"authors":6,"body":9,"category":105,"date":106,"description":107,"extension":108,"externalUrl":109,"faq":109,"featured":110,"heroImage":111,"meta":112,"navigation":113,"path":114,"seo":115,"slug":119,"stem":120,"tags":121,"template":125,"updatedDate":109,"__hash__":126},"blogPosts/en-us/blog/git-not-just-for-developers.md","Git: Not just for developers",[7,8],"Opher Vishnia","Roy Taragan",{"type":10,"value":11,"toc":100},"minimark",[12,23,32,42,45,48,54,57,60,66,71,74,82,88,91,97],[13,14,15,16,22],"p",{},"In this post I’d like to tell you about how, at ",[17,18,21],"a",{"href":19,"rel":20},"https://helloeko.com/",[],"Eko",", we’re using GitLab CE to allow professionals from different disciplines, such as video editors, designers, and software engineers, to collaborate on creating and publishing Interactive Video projects using the Eko platform.",[13,24,25,26,31],{},"Eko is a unique company. I know practically every company says that about itself, but for us that’s doubly true in that both our platform as well as our users, and our users of users, take part and actively contribute to creative, experimental ideas and technology. At the core of what we do is an exciting new medium called Interactive Video, which enhances storytelling by bridging the gap between the creator and the viewer. The projects themselves are somewhere between a TV show and a video game. These embody a range of creativity - from the ",[17,27,30],{"href":28,"rel":29},"https://helloeko.com/mindblown/beats-and-rhymes?publisherID=gitlab",[],"official music video for Bob Dylan’s “Like a Rolling Stone,”"," through choose-your-own-adventure style comedies and high-caliber movie studio productions like #WarGames.",[13,33,34],{},[17,35,37],{"href":28,"rel":36},[],[38,39],"img",{"alt":40,"src":41},"Bob Dylan's Like a Rolling Stone video","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782398210/blog/Content%20Images/eko_mind_blown.png",[13,43,44],{},"Our development body creates all the technology for both viewing and authoring these experiences, which are created by small indies as well as big studios and production houses. At the end of the day though, all of these projects, regardless of whether they’re playing on desktop, mobile, or the Xbox, are built with web technologies and run in a browser. Each project is served as a web app, consisting of HTML, JavaScript and CSS files, as well as its video, audio and image assets.",[13,46,47],{},"To create these projects, Eko offers a web-based, drag-and-drop interface called Eko Studio. This software provides project creators with an easy interface for uploading and assembling video, connecting the different videos to each other, creating GUI to define the underlying creativity and finally publishing the finished product.",[13,49,50],{},[38,51],{"alt":52,"src":53},"Eko Studio","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782398209/blog/Content%20Images/eko-guest-post/eko-studio.png",[13,55,56],{},"In cases where extra logic and functionality is required, such that isn’t yet covered by the set of features in Eko Studio, we offer the Eko SDK, which enables developers to extend the Studio’s functionality by writing their own custom JS and CSS code.",[13,58,59],{},"The interesting thing about the creation process of our Interactive Video projects is because of their scope and multi-disciplinary nature, different people with different roles all work on the same project at the same time. For example, a video editor might upload a new scene, a project manager would change the SEO copy and a developer might implement new GUI or functionality. One of the challenges we faced at Eko is that all of this needs to be synchronised and shared by all. The experience needs to be fluid and cohesive for all types of users, regardless of their role.",[13,61,62],{},[38,63],{"alt":64,"src":65},"Eko Studio commits","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782398208/blog/Content%20Images/eko-guest-post/eko-studio-commits.png",[67,68,70],"h2",{"id":69},"using-open-source-to-enable-collaboration","Using open source to enable collaboration",[13,72,73],{},"So what type of software allows for multiple people to work on the same project without stepping on each other’s toes? Git, of course! With that in mind we set out to find how can we use Git as a backend that could serve our creators, developers and non-developers alike.",[13,75,76,77,81],{},"In Eko Studio, users can activate the feature that allows extending a project with code. Behind the scenes, the studio then employs GitLab’s API to create a new repository, generates all the code reflecting the current state of the project, and pushes it as the ",[78,79,80],"em",{},"initial commit",". From this point forward, each time a preview or published version of the project is generated, the process will begin by first pulling the latest version of the code from the repo. Using GitLab’s webhook for push events combined with Firebase, any time a commit is pushed to the repository, the user in Eko Studio is notified and the UI is updated accordingly. The user in Eko Studio can see all the commits (also fetched using the GitLab API) listed as versions, and can revert to an earlier version.",[83,84,85],"blockquote",{},[13,86,87],{},"The less tech-savvy users aren’t even fully aware that by editing the project or adding content they are in fact publishing commits in the project repo",[13,89,90],{},"The cool thing here though, is that the Eko Studio itself acts as a Git client behind the scenes. The less tech-savvy users aren’t even fully aware that by editing the project or adding content they are in fact publishing commits in the project repo. The studio interface makes this completely transparent for them. Changes to the project made in Eko Studio are translated into Git commits in the project repo. Over on the dev side though, the software engineers use the Git interface itself using their favorite code editor and Git client.",[13,92,93],{},[38,94],{"alt":95,"src":96},"Eko Studio code panel","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782398208/blog/Content%20Images/eko-guest-post/eko-studio-code-panel.png",[13,98,99],{},"The fact that GitLab is open source enabled us to custom tailor a solution for our users with minimal changes, leveraging APIs and webhooks to connect our own infrastructure. The readily available AMI meant that we can easily spool up our own GitLab CE instances without a complicated setup process. While our use case is very specific, the fact we’ve been able to use GitLab CE with minimal effort to implement our platform and tools for creating Interactive Video definitely highlights the flexibility and capabilities of GitLab!",{"title":101,"searchDepth":102,"depth":102,"links":103},"",2,[104],{"id":69,"depth":102,"text":70},"open-source","2018-05-24","How one company helps video editors, developers, and project managers to collaborate on interactive video, by leveraging the power of open source.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670464/Blog/Hero%20Images/gitlab-loves-open-source.jpg",{},true,"/en-us/blog/git-not-just-for-developers",{"title":5,"description":107,"ogTitle":5,"ogDescription":107,"noIndex":110,"ogImage":111,"ogUrl":116,"ogSiteName":117,"ogType":118,"canonicalUrls":116},"https://about.gitlab.com/blog/git-not-just-for-developers","https://about.gitlab.com","article","git-not-just-for-developers","en-us/blog/git-not-just-for-developers",[122,123,124],"git","collaboration","open source","BlogPost","dQ44bCs57O_tX9h9oYDujGs4YuFRhcpxUnqdbAbmt_I",{"logo":128,"freeTrial":133,"sales":138,"login":143,"items":148,"search":475,"minimal":506,"duo":525,"switchNav":534,"pricingDeployment":545},{"config":129},{"href":130,"dataGaName":131,"dataGaLocation":132},"/","gitlab logo","header",{"text":134,"config":135},"Get free trial",{"href":136,"dataGaName":137,"dataGaLocation":132},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":139,"config":140},"Request a demo",{"href":141,"dataGaName":142,"dataGaLocation":132},"/sales/?contact-topic=request-demo","sales",{"text":144,"config":145},"Sign in",{"href":146,"dataGaName":147,"dataGaLocation":132},"https://gitlab.com/users/sign_in/","sign in",[149,178,278,283,397,453],{"text":150,"config":151,"menu":153},"Platform",{"dataNavLevelOne":152},"platform",{"type":154,"columns":155},"cards",[156,162,170],{"title":150,"description":157,"link":158},"The intelligent orchestration platform for DevSecOps",{"text":159,"config":160},"Explore our Platform",{"href":161,"dataGaName":152,"dataGaLocation":132},"/platform/",{"title":163,"description":164,"link":165},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":166,"config":167},"Meet GitLab Duo",{"href":168,"dataGaName":169,"dataGaLocation":132},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":171,"description":172,"link":173},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":174,"config":175},"Learn more",{"href":176,"dataGaName":177,"dataGaLocation":132},"/why-gitlab/","why gitlab",{"text":179,"left":113,"config":180,"menu":182},"Product",{"dataNavLevelOne":181},"solutions",{"type":183,"link":184,"columns":188,"feature":257},"lists",{"text":185,"config":186},"View all Solutions",{"href":187,"dataGaName":181,"dataGaLocation":132},"/solutions/",[189,213,236],{"title":190,"description":191,"link":192,"items":197},"Automation","CI/CD and automation to accelerate deployment",{"config":193},{"icon":194,"href":195,"dataGaName":196,"dataGaLocation":132},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[198,202,205,209],{"text":199,"config":200},"CI/CD",{"href":201,"dataGaLocation":132,"dataGaName":199},"/solutions/continuous-integration/",{"text":163,"config":203},{"href":168,"dataGaLocation":132,"dataGaName":204},"gitlab duo agent platform - product menu",{"text":206,"config":207},"Source Code Management",{"href":208,"dataGaLocation":132,"dataGaName":206},"/solutions/source-code-management/",{"text":210,"config":211},"Automated Software Delivery",{"href":195,"dataGaLocation":132,"dataGaName":212},"Automated software delivery",{"title":214,"description":215,"link":216,"items":221},"Security","Deliver code faster without compromising security",{"config":217},{"href":218,"dataGaName":219,"dataGaLocation":132,"icon":220},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[222,226,231],{"text":223,"config":224},"Application Security Testing",{"href":218,"dataGaName":225,"dataGaLocation":132},"Application security testing",{"text":227,"config":228},"Software Supply Chain Security",{"href":229,"dataGaLocation":132,"dataGaName":230},"/solutions/supply-chain/","Software supply chain security",{"text":232,"config":233},"Software Compliance",{"href":234,"dataGaName":235,"dataGaLocation":132},"/solutions/software-compliance/","software compliance",{"title":237,"link":238,"items":243},"Measurement",{"config":239},{"icon":240,"href":241,"dataGaName":242,"dataGaLocation":132},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[244,248,252],{"text":245,"config":246},"Visibility & Measurement",{"href":241,"dataGaLocation":132,"dataGaName":247},"Visibility and Measurement",{"text":249,"config":250},"Value Stream Management",{"href":251,"dataGaLocation":132,"dataGaName":249},"/solutions/value-stream-management/",{"text":253,"config":254},"Analytics & Insights",{"href":255,"dataGaLocation":132,"dataGaName":256},"/solutions/analytics-and-insights/","Analytics and insights",{"title":258,"type":183,"items":259},"GitLab for",[260,266,272],{"text":261,"config":262},"Enterprise",{"icon":263,"href":264,"dataGaLocation":132,"dataGaName":265},"Building","/enterprise/","enterprise",{"text":267,"config":268},"Small Business",{"icon":269,"href":270,"dataGaLocation":132,"dataGaName":271},"Work","/small-business/","small business",{"text":273,"config":274},"Public Sector",{"icon":275,"href":276,"dataGaLocation":132,"dataGaName":277},"Organization","/solutions/public-sector/","public sector",{"text":279,"config":280},"Pricing",{"href":281,"dataGaName":282,"dataGaLocation":132,"dataNavLevelOne":282},"/pricing/","pricing",{"text":284,"config":285,"menu":287},"Resources",{"dataNavLevelOne":286},"resources",{"type":183,"link":288,"columns":292,"feature":386},{"text":289,"config":290},"View all resources",{"href":291,"dataGaName":286,"dataGaLocation":132},"/resources/",[293,326,353],{"title":294,"items":295},"Getting started",[296,301,306,311,316,321],{"text":297,"config":298},"Install",{"href":299,"dataGaName":300,"dataGaLocation":132},"/install/","install",{"text":302,"config":303},"Quick start guides",{"href":304,"dataGaName":305,"dataGaLocation":132},"/get-started/","quick setup checklists",{"text":307,"config":308},"Learn",{"href":309,"dataGaLocation":132,"dataGaName":310},"https://university.gitlab.com/","learn",{"text":312,"config":313},"Product documentation",{"href":314,"dataGaName":315,"dataGaLocation":132},"https://docs.gitlab.com/","product documentation",{"text":317,"config":318},"Best practice videos",{"href":319,"dataGaName":320,"dataGaLocation":132},"/getting-started-videos/","best practice videos",{"text":322,"config":323},"Integrations",{"href":324,"dataGaName":325,"dataGaLocation":132},"/integrations/","integrations",{"title":327,"items":328},"Discover",[329,334,339,344,348],{"text":330,"config":331},"Customer success stories",{"href":332,"dataGaName":333,"dataGaLocation":132},"/customers/","customer success stories",{"text":335,"config":336},"Blog",{"href":337,"dataGaName":338,"dataGaLocation":132},"/blog/","blog",{"text":340,"config":341},"Demo Hub",{"href":342,"dataGaName":343,"dataGaLocation":132},"/demo-hub/","demo hub",{"text":345,"config":346},"The Source",{"href":347,"dataGaName":338,"dataGaLocation":132},"/the-source/",{"text":349,"config":350},"Remote",{"href":351,"dataGaName":352,"dataGaLocation":132},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":354,"items":355},"Connect",[356,361,366,371,376,381],{"text":357,"config":358},"GitLab Services",{"href":359,"dataGaName":360,"dataGaLocation":132},"/services/","services",{"text":362,"config":363},"Contribute",{"href":364,"dataGaName":365,"dataGaLocation":132},"https://contributors.gitlab.com","contribute",{"text":367,"config":368},"Community",{"href":369,"dataGaName":370,"dataGaLocation":132},"/community/","community",{"text":372,"config":373},"Forum",{"href":374,"dataGaName":375,"dataGaLocation":132},"https://forum.gitlab.com/","forum",{"text":377,"config":378},"Events",{"href":379,"dataGaName":380,"dataGaLocation":132},"/events/","events",{"text":382,"config":383},"Partners",{"href":384,"dataGaName":385,"dataGaLocation":132},"/partners/","partners",{"config":387,"title":390,"text":391,"link":392},{"background":388,"textColor":389},"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":393,"config":394},"Read the latest",{"href":395,"dataGaName":396,"dataGaLocation":132},"/whats-new/","whats new",{"text":398,"config":399,"menu":401},"Company",{"dataNavLevelOne":400},"company",{"type":183,"columns":402},[403],{"items":404},[405,410,416,418,423,428,433,438,443,448],{"text":406,"config":407},"About",{"href":408,"dataGaName":409,"dataGaLocation":132},"/company/","about",{"text":411,"config":412,"footerGa":415},"Jobs",{"href":413,"dataGaName":414,"dataGaLocation":132},"/jobs/","jobs",{"dataGaName":414},{"text":377,"config":417},{"href":379,"dataGaName":380,"dataGaLocation":132},{"text":419,"config":420},"Leadership",{"href":421,"dataGaName":422,"dataGaLocation":132},"/company/team/e-group/","leadership",{"text":424,"config":425},"Handbook",{"href":426,"dataGaName":427,"dataGaLocation":132},"https://handbook.gitlab.com/","handbook",{"text":429,"config":430},"Investor relations",{"href":431,"dataGaName":432,"dataGaLocation":132},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":434,"config":435},"Trust Center",{"href":436,"dataGaName":437,"dataGaLocation":132},"/security/","trust center",{"text":439,"config":440},"AI Transparency Center",{"href":441,"dataGaName":442,"dataGaLocation":132},"/ai-transparency-center/","ai transparency center",{"text":444,"config":445},"Newsletter",{"href":446,"dataGaName":447,"dataGaLocation":132},"/company/contact/#contact-forms","newsletter",{"text":449,"config":450},"Press",{"href":451,"dataGaName":452,"dataGaLocation":132},"/press/","press",{"text":454,"config":455,"menu":456},"Contact us",{"dataNavLevelOne":400},{"type":183,"columns":457},[458],{"items":459},[460,465,470],{"text":461,"config":462},"Talk to sales",{"href":463,"dataGaName":464,"dataGaLocation":132},"/sales/","talk to sales",{"text":466,"config":467},"Support portal",{"href":468,"dataGaName":469,"dataGaLocation":132},"https://support.gitlab.com/hc/en-us","support portal",{"text":471,"config":472},"Customer portal",{"href":473,"dataGaName":474,"dataGaLocation":132},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":476,"login":477,"suggestions":484},"Close",{"text":478,"link":479},"To search repositories and projects, login to",{"text":480,"config":481},"gitlab.com",{"href":146,"dataGaName":482,"dataGaLocation":483},"search login","search",{"text":485,"default":486},"Suggestions",[487,489,493,495,499,503],{"text":163,"config":488},{"href":168,"dataGaName":163,"dataGaLocation":483},{"text":490,"config":491},"Code Suggestions (AI)",{"href":492,"dataGaName":490,"dataGaLocation":483},"/solutions/code-suggestions/",{"text":199,"config":494},{"href":201,"dataGaName":199,"dataGaLocation":483},{"text":496,"config":497},"GitLab on AWS",{"href":498,"dataGaName":496,"dataGaLocation":483},"/partners/technology-partners/aws/",{"text":500,"config":501},"GitLab on Google Cloud",{"href":502,"dataGaName":500,"dataGaLocation":483},"/partners/technology-partners/google-cloud-platform/",{"text":504,"config":505},"Why GitLab?",{"href":176,"dataGaName":504,"dataGaLocation":483},{"freeTrial":507,"mobileIcon":512,"desktopIcon":517,"secondaryButton":520},{"text":508,"config":509},"Start free trial",{"href":510,"dataGaName":137,"dataGaLocation":511},"https://gitlab.com/-/trials/new/","nav",{"altText":513,"config":514},"Gitlab Icon",{"src":515,"dataGaName":516,"dataGaLocation":511},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":513,"config":518},{"src":519,"dataGaName":516,"dataGaLocation":511},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":521,"config":522},"Get Started",{"href":523,"dataGaName":524,"dataGaLocation":511},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":526,"mobileIcon":530,"desktopIcon":532},{"text":527,"config":528},"Learn more about GitLab Duo",{"href":168,"dataGaName":529,"dataGaLocation":511},"gitlab duo",{"altText":513,"config":531},{"src":515,"dataGaName":516,"dataGaLocation":511},{"altText":513,"config":533},{"src":519,"dataGaName":516,"dataGaLocation":511},{"button":535,"mobileIcon":540,"desktopIcon":542},{"text":536,"config":537},"/switch",{"href":538,"dataGaName":539,"dataGaLocation":511},"#contact","switch",{"altText":513,"config":541},{"src":515,"dataGaName":516,"dataGaLocation":511},{"altText":513,"config":543},{"src":544,"dataGaName":516,"dataGaLocation":511},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":546,"mobileIcon":551,"desktopIcon":553},{"text":547,"config":548},"Back to pricing",{"href":281,"dataGaName":549,"dataGaLocation":511,"icon":550},"back to pricing","GoBack",{"altText":513,"config":552},{"src":515,"dataGaName":516,"dataGaLocation":511},{"altText":513,"config":554},{"src":519,"dataGaName":516,"dataGaLocation":511},{"title":556,"titleMobile":557,"button":558,"config":563},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":174,"config":559},{"href":560,"dataGaName":561,"dataGaLocation":562},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":564,"disabled":110},"release",{"data":566},{"text":567,"source":568,"edit":574,"contribute":579,"config":584,"items":589,"minimal":799},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":569,"config":570},"View page source",{"href":571,"dataGaName":572,"dataGaLocation":573},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":575,"config":576},"Edit this page",{"href":577,"dataGaName":578,"dataGaLocation":573},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":580,"config":581},"Please contribute",{"href":582,"dataGaName":583,"dataGaLocation":573},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":585,"facebook":586,"youtube":587,"linkedin":588},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[590,637,691,735,767],{"title":279,"links":591,"subMenu":606},[592,596,601],{"text":593,"config":594},"View plans",{"href":281,"dataGaName":595,"dataGaLocation":573},"view plans",{"text":597,"config":598},"Why Premium?",{"href":599,"dataGaName":600,"dataGaLocation":573},"/pricing/premium/","why premium",{"text":602,"config":603},"Why Ultimate?",{"href":604,"dataGaName":605,"dataGaLocation":573},"/pricing/ultimate/","why ultimate",[607],{"title":608,"links":609},"Contact Us",[610,613,615,617,622,627,632],{"text":611,"config":612},"Contact sales",{"href":463,"dataGaName":142,"dataGaLocation":573},{"text":466,"config":614},{"href":468,"dataGaName":469,"dataGaLocation":573},{"text":471,"config":616},{"href":473,"dataGaName":474,"dataGaLocation":573},{"text":618,"config":619},"Status",{"href":620,"dataGaName":621,"dataGaLocation":573},"https://status.gitlab.com/","status",{"text":623,"config":624},"Terms of use",{"href":625,"dataGaName":626,"dataGaLocation":573},"/terms/","terms of use",{"text":628,"config":629},"Privacy statement",{"href":630,"dataGaName":631,"dataGaLocation":573},"/privacy/","privacy statement",{"text":633,"config":634},"Cookie preferences",{"dataGaName":635,"dataGaLocation":573,"id":636,"isOneTrustButton":113},"cookie preferences","ot-sdk-btn",{"title":179,"links":638,"subMenu":647},[639,643],{"text":640,"config":641},"DevSecOps platform",{"href":161,"dataGaName":642,"dataGaLocation":573},"devsecops platform",{"text":644,"config":645},"AI-Assisted Development",{"href":168,"dataGaName":646,"dataGaLocation":573},"ai-assisted development",[648],{"title":649,"links":650},"Topics",[651,656,661,666,671,676,681,686],{"text":652,"config":653},"CICD",{"href":654,"dataGaName":655,"dataGaLocation":573},"/topics/ci-cd/","cicd",{"text":657,"config":658},"GitOps",{"href":659,"dataGaName":660,"dataGaLocation":573},"/topics/gitops/","gitops",{"text":662,"config":663},"DevOps",{"href":664,"dataGaName":665,"dataGaLocation":573},"/topics/devops/","devops",{"text":667,"config":668},"Version Control",{"href":669,"dataGaName":670,"dataGaLocation":573},"/topics/version-control/","version control",{"text":672,"config":673},"DevSecOps",{"href":674,"dataGaName":675,"dataGaLocation":573},"/topics/devsecops/","devsecops",{"text":677,"config":678},"Cloud Native",{"href":679,"dataGaName":680,"dataGaLocation":573},"/topics/cloud-native/","cloud native",{"text":682,"config":683},"AI for Coding",{"href":684,"dataGaName":685,"dataGaLocation":573},"/topics/devops/ai-for-coding/","ai for coding",{"text":687,"config":688},"Agentic AI",{"href":689,"dataGaName":690,"dataGaLocation":573},"/topics/agentic-ai/","agentic ai",{"title":692,"links":693},"Solutions",[694,696,698,703,707,710,714,717,719,722,725,730],{"text":223,"config":695},{"href":218,"dataGaName":223,"dataGaLocation":573},{"text":212,"config":697},{"href":195,"dataGaName":196,"dataGaLocation":573},{"text":699,"config":700},"Agile development",{"href":701,"dataGaName":702,"dataGaLocation":573},"/solutions/agile-delivery/","agile delivery",{"text":704,"config":705},"SCM",{"href":208,"dataGaName":706,"dataGaLocation":573},"source code management",{"text":652,"config":708},{"href":201,"dataGaName":709,"dataGaLocation":573},"continuous integration & delivery",{"text":711,"config":712},"Value stream management",{"href":251,"dataGaName":713,"dataGaLocation":573},"value stream management",{"text":657,"config":715},{"href":716,"dataGaName":660,"dataGaLocation":573},"/solutions/gitops/",{"text":261,"config":718},{"href":264,"dataGaName":265,"dataGaLocation":573},{"text":720,"config":721},"Small business",{"href":270,"dataGaName":271,"dataGaLocation":573},{"text":723,"config":724},"Public sector",{"href":276,"dataGaName":277,"dataGaLocation":573},{"text":726,"config":727},"Education",{"href":728,"dataGaName":729,"dataGaLocation":573},"/solutions/education/","education",{"text":731,"config":732},"Financial services",{"href":733,"dataGaName":734,"dataGaLocation":573},"/solutions/finance/","financial services",{"title":284,"links":736},[737,739,741,743,746,748,751,753,755,757,759,761,763,765],{"text":297,"config":738},{"href":299,"dataGaName":300,"dataGaLocation":573},{"text":302,"config":740},{"href":304,"dataGaName":305,"dataGaLocation":573},{"text":307,"config":742},{"href":309,"dataGaName":310,"dataGaLocation":573},{"text":312,"config":744},{"href":314,"dataGaName":745,"dataGaLocation":573},"docs",{"text":335,"config":747},{"href":337,"dataGaName":338,"dataGaLocation":573},{"text":749,"config":750},"What's new",{"href":395,"dataGaName":396,"dataGaLocation":573},{"text":330,"config":752},{"href":332,"dataGaName":333,"dataGaLocation":573},{"text":349,"config":754},{"href":351,"dataGaName":352,"dataGaLocation":573},{"text":357,"config":756},{"href":359,"dataGaName":360,"dataGaLocation":573},{"text":362,"config":758},{"href":364,"dataGaName":365,"dataGaLocation":573},{"text":367,"config":760},{"href":369,"dataGaName":370,"dataGaLocation":573},{"text":372,"config":762},{"href":374,"dataGaName":375,"dataGaLocation":573},{"text":377,"config":764},{"href":379,"dataGaName":380,"dataGaLocation":573},{"text":382,"config":766},{"href":384,"dataGaName":385,"dataGaLocation":573},{"title":398,"links":768},[769,771,773,775,777,779,783,788,790,792,794],{"text":406,"config":770},{"href":408,"dataGaName":400,"dataGaLocation":573},{"text":411,"config":772},{"href":413,"dataGaName":414,"dataGaLocation":573},{"text":419,"config":774},{"href":421,"dataGaName":422,"dataGaLocation":573},{"text":424,"config":776},{"href":426,"dataGaName":427,"dataGaLocation":573},{"text":429,"config":778},{"href":431,"dataGaName":432,"dataGaLocation":573},{"text":780,"config":781},"Sustainability",{"href":782,"dataGaName":780,"dataGaLocation":573},"/sustainability/",{"text":784,"config":785},"Diversity, inclusion and belonging (DIB)",{"href":786,"dataGaName":787,"dataGaLocation":573},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":434,"config":789},{"href":436,"dataGaName":437,"dataGaLocation":573},{"text":444,"config":791},{"href":446,"dataGaName":447,"dataGaLocation":573},{"text":449,"config":793},{"href":451,"dataGaName":452,"dataGaLocation":573},{"text":795,"config":796},"Modern Slavery Transparency Statement",{"href":797,"dataGaName":798,"dataGaLocation":573},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":800},[801,804,807],{"text":802,"config":803},"Terms",{"href":625,"dataGaName":626,"dataGaLocation":573},{"text":805,"config":806},"Cookies",{"dataGaName":635,"dataGaLocation":573,"id":636,"isOneTrustButton":113},{"text":808,"config":809},"Privacy",{"href":630,"dataGaName":631,"dataGaLocation":573},[811,825],{"id":812,"title":7,"body":109,"config":813,"content":815,"description":109,"extension":819,"meta":820,"navigation":113,"path":821,"seo":822,"stem":823,"__hash__":824},"blogAuthors/en-us/blog/authors/opher-vishnia.yml",{"template":814},"BlogAuthor",{"name":7,"config":816},{"headshot":817,"ctfId":818},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","O0F3sw3av9pRAxeP9iR7N","yml",{},"/en-us/blog/authors/opher-vishnia",{},"en-us/blog/authors/opher-vishnia","bojBxKdIXbwPsq-BDJxjpXysTP7WQ6n7xRy8F_LEWNU",{"id":826,"title":8,"body":109,"config":827,"content":828,"description":109,"extension":819,"meta":831,"navigation":113,"path":832,"seo":833,"stem":834,"__hash__":835},"blogAuthors/en-us/blog/authors/roy-taragan.yml",{"template":814},{"name":8,"config":829},{"headshot":817,"ctfId":830},"3pnwP9gqELfda3DCOQJQCL",{},"/en-us/blog/authors/roy-taragan",{},"en-us/blog/authors/roy-taragan","GEyE1u2xWQ8G-poFVsjQu-8Ae9A9crhB7s7_tGI-d94",[837,845,853],{"title":838,"description":839,"heroImage":840,"category":105,"date":841,"authors":842,"slug":844,"externalUrl":109},"What's new in Git 2.55.0?","Learn about the new features and changes in Git 2.55, including a new git-history(1) fixup command, an fsmonitor daemon for Linux, pushing to remote groups, and more.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782732487/ztwgrvlolpifo01vj8qc.png","2026-06-29",[843],"Toon Claes","whats-new-in-git-2-55-0",{"title":846,"description":847,"heroImage":848,"category":105,"date":849,"authors":850,"slug":852,"externalUrl":109},"GitLab AI Hackathon 2026: Meet the winners","Nearly 7,000 developers built 600+ AI agents and flows on GitLab Duo Agent Platform. Find out who won and what they created.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1776457632/llddiylsgwuze0u1rjks.png","2026-04-22",[851],"Nick Veenhof","gitlab-ai-hackathon-2026-meet-the-winners",{"title":854,"description":855,"heroImage":856,"category":105,"date":857,"authors":858,"slug":860,"externalUrl":109},"What’s new in Git 2.54.0?","Learn about release contributions, including new repository maintenance, a new command to edit commit history, a replacement for git-sizer(1), and more.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782734716/ztwgrvlolpifo01vj8qc.png","2026-04-20",[859],"Patrick Steinhardt","whats-new-in-git-2-54-0",{"promotions":862},[863,877,889,901],{"id":864,"categories":865,"header":867,"text":868,"button":869,"image":874},"ai-modernization",[866],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":870,"config":871},"Get your AI maturity score",{"href":872,"dataGaName":873,"dataGaLocation":338},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":875},{"src":876},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":878,"categories":879,"header":881,"text":868,"button":882,"image":886},"devops-modernization",[880,675],"product","Are you just managing tools or shipping innovation?",{"text":883,"config":884},"Get your DevOps maturity score",{"href":885,"dataGaName":873,"dataGaLocation":338},"/assessments/devops-modernization-assessment/",{"config":887},{"src":888},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":890,"categories":891,"header":893,"text":868,"button":894,"image":898},"security-modernization",[892],"security","Are you trading speed for security?",{"text":895,"config":896},"Get your security maturity score",{"href":897,"dataGaName":873,"dataGaLocation":338},"/assessments/security-modernization-assessment/",{"config":899},{"src":900},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":902,"paths":903,"header":906,"text":907,"button":908,"image":913},"github-azure-migration",[904,905],"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":909,"config":910},"See how GitLab compares to GitHub",{"href":911,"dataGaName":912,"dataGaLocation":338},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":914},{"src":888},{"header":916,"blurb":917,"button":918,"secondaryButton":923},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":919,"config":920},"Get your free trial",{"href":921,"dataGaName":137,"dataGaLocation":922},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":611,"config":924},{"href":463,"dataGaName":142,"dataGaLocation":922},1786803732744]