[{"data":1,"prerenderedAt":1533},["ShallowReactive",2],{"/blog/how-gitlab-can-support-your-iso-compliance-journey":3,"navigation-en-us":751,"banner-en-us":1176,"footer-en-us":1186,"blog-post-authors-en-us-Joseph Longo":1430,"blog-related-posts-en-us-how-gitlab-can-support-your-iso-compliance-journey":1445,"blog-promotions-en-us":1470,"next-steps-en-us":1523},{"id":4,"title":5,"authors":6,"body":8,"category":730,"date":731,"description":732,"extension":733,"externalUrl":734,"faq":734,"featured":735,"heroImage":736,"meta":737,"navigation":738,"path":739,"seo":740,"slug":744,"stem":745,"tags":746,"template":749,"updatedDate":734,"__hash__":750},"blogPosts/en-us/blog/how-gitlab-can-support-your-iso-compliance-journey.md","How GitLab can support your ISO 27001 compliance journey",[7],"Joseph Longo",{"type":9,"value":10,"toc":723},"minimark",[11,15,18,34,37,42,102,111,133,142,157,170,180,200,209,277,284,287,302,306,358,377,385,388,409,411,439,442,462,468,471,477,479,507,515,552,555,561,563,572,590,593,595,615,618,621,638,647,653,656,659,689,708,712,715],[12,13,14],"p",{},"As a single, all-inclusive platform, managing your DevSecOps lifecycle with\nGitLab is easy. GitLab’s platform enables developers to build better software faster. But the effectiveness of GitLab extends beyond DevSecOps.",[12,16,17],{},"In October of 2022, the International Organization for Standardization released the latest edition of the ISO 27001 standard. ISO/IEC 27001:2022 includes several changes from its previous edition, including the addition of Annex A controls focused on secure coding and configuration management.",[12,19,20,21,27,28,33],{},"At GitLab, we leverage our platform to support many aspects of our security compliance program, a concept we internally call ",[22,23,26],"a",{"href":24,"rel":25},"https://handbook.gitlab.com/handbook/product/product-processes/dogfooding-for-r-d/",[],"dogfooding",". An overview of the compliance and assurance credentials that we maintain can be found on our ",[22,29,32],{"href":30,"rel":31},"https://about.gitlab.com/security/",[],"Trust Center"," page.",[12,35,36],{},"Let’s review the primary functions you can leverage to support your ISO 27001 compliance journey.",[38,39,41],"h2",{"id":40},"organizational-controls","Organizational controls",[43,44,45,58],"table",{},[46,47,48],"thead",{},[49,50,51,55],"tr",{},[52,53,54],"th",{},"Control ID",[52,56,57],{},"Control Description",[59,60,61,70,78,86,94],"tbody",{},[49,62,63,67],{},[64,65,66],"td",{},"5.3 Segregation of duties",[64,68,69],{},"Conflicting duties and conflicting areas of responsibility shall be segregated.",[49,71,72,75],{},[64,73,74],{},"5.15 Access control",[64,76,77],{},"Rules to control physical and logical access to information and other associated assets shall be established and implemented based on business and information security requirements.",[49,79,80,83],{},[64,81,82],{},"5.16 Identity management",[64,84,85],{},"The full lifecycle of identities shall be managed.",[49,87,88,91],{},[64,89,90],{},"8.2 Privileged access rights",[64,92,93],{},"The allocation and use of privileged access rights shall be restricted and managed.",[49,95,96,99],{},[64,97,98],{},"8.4 Access to source code",[64,100,101],{},"Read and write access to source code, development tools, and software libraries shall be appropriately managed.",[12,103,104,105,110],{},"With GitLab, you can ",[22,106,109],{"href":107,"rel":108},"https://docs.gitlab.com/user/permissions/",[],"assign users a role"," when you add them to a project or group. A user’s role determines the actions they can take within your GitLab instance. The following roles are available for assignment:",[112,113,114,118,121,124,127,130],"ul",{},[115,116,117],"li",{},"Guest (private and internal projects only)",[115,119,120],{},"Reporter",[115,122,123],{},"Developer",[115,125,126],{},"Maintainer",[115,128,129],{},"Owner",[115,131,132],{},"Minimal access (available for the top-level group only)",[12,134,135,136,141],{},"GitLab’s roles enable you to limit a user’s permissions in accordance with the ",[22,137,140],{"href":138,"rel":139},"https://csrc.nist.gov/glossary/term/least_privilege",[],"principle of least privilege"," and your business and information security requirements.",[12,143,144,145,150,151,156],{},"GitLab enables you to centralize authentication and authorization responsibilities for your GitLab instance through ",[22,146,149],{"href":147,"rel":148},"https://docs.gitlab.com/user/group/saml_sso/",[],"SAML\nSSO"," integrations. GitLab integrates with a wide range of identity providers to support our customers’ diverse tech stacks. GitLab also supports the System for Cross-Domain\nIdentity Management (",[22,152,155],{"href":153,"rel":154},"https://docs.gitlab.com/user/group/saml_sso/scim_setup/",[],"SCIM",").\nThrough GitLab’s SSO and SCIM integrations, you can automate the lifecycle of your user identities in a secure and efficient manner.",[12,158,159,164,165,169],{},[22,160,163],{"href":161,"rel":162},"https://docs.gitlab.com/integration/saml/",[],"SSO"," and ",[22,166,155],{"href":167,"rel":168},"https://docs.gitlab.com/administration/settings/scim_setup/",[],"\nare also available for GitLab self-managed customers.",[12,171,172,176,177],{},[173,174,175],"strong",{},"Note:"," Annex A Technological controls 8.2 and 8.4 were included in the chart above due to their close relationship with Organizational controls 5.3, 5.15, and 5.16. The same GitLab features can be applied to support these control requirements.\n",[178,179],"br",{},[43,181,182,190],{},[46,183,184],{},[49,185,186,188],{},[52,187,54],{},[52,189,57],{},[59,191,192],{},[49,193,194,197],{},[64,195,196],{},"5.8 Information security in project management",[64,198,199],{},"Information security shall be integrated into project management.",[12,201,202,203,208],{},"With GitLab, you can use our ",[22,204,207],{"href":205,"rel":206},"https://about.gitlab.com/pricing/feature-comparison/",[],"planning tools"," to support your project management efforts and ensure information security is being appropriately considered through all phases of a project’s lifecycle.",[112,210,211,220,258],{},[115,212,213,214,219],{},"GitLab’s ",[22,215,218],{"href":216,"rel":217},"https://about.gitlab.com/pricing/feature-comparison/#team_planning",[],"team\nplanning","\nfeatures enable users to organize, plan, align, and track project work from idea to production.",[115,221,222,227,228,233,234,239,240,245,246,251,252,257],{},[22,223,226],{"href":224,"rel":225},"https://docs.gitlab.com/user/group/epics/",[],"Epics",",\n",[22,229,232],{"href":230,"rel":231},"https://docs.gitlab.com/user/project/issues/",[],"issues",", and ",[22,235,238],{"href":236,"rel":237},"https://docs.gitlab.com/user/tasks/",[],"tasks"," can be used to collaborate on ideas, solve problems, and plan work with your information security team. ",[22,241,244],{"href":242,"rel":243},"https://docs.gitlab.com/user/project/description_templates/",[],"Description templates","\nand ",[22,247,250],{"href":248,"rel":249},"https://docs.gitlab.com/user/markdown/#task-lists",[],"checklists","\nenable users to apply a consistent description and workflow to issues or ",[22,253,256],{"href":254,"rel":255},"https://docs.gitlab.com/user/project/merge_requests/",[],"merge requests",".\nThese templates support a consistent approach to integrating information security into your project management lifecycle.",[115,259,260,265,266,271,272,276],{},[22,261,264],{"href":262,"rel":263},"https://docs.gitlab.com/user/project/labels/",[],"Labels"," allow users\nto organize issues as they see fit. To support information security, labels may be used to identify the risk level associated with a project, identify the stage a project is in, or identify the information security team that is responsible for a set of work. ",[22,267,270],{"href":268,"rel":269},"https://docs.gitlab.com/user/project/labels/#scoped-labels",[],"Scoped labels","\ncan be used to add further logic to workflows by preventing certain labels from being used together. At GitLab, we leverage ",[22,273,275],{"href":268,"rel":274},[],"scoped labels","\nto identify work assigned to different teams, the project stage the work resides in, and the product or feature set associated with the work.",[12,278,279],{},[280,281],"img",{"alt":282,"src":283},"Scoped\nLabels","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782397834/blog/Content%20Images/2023-08-24-how-gitlab-can-support-your-iso-compliance-journey/scoped-labels.png",[12,285,286],{},"Scoped Labels",[112,288,289],{},[115,290,291,245,296,301],{},[22,292,295],{"href":293,"rel":294},"https://docs.gitlab.com/user/project/issue_board/#group-issue-boards",[],"Group",[22,297,300],{"href":298,"rel":299},"https://docs.gitlab.com/user/project/issue_board/",[],"project","\nissue boards can be used to further organize your work and provide a central, aggregated view of all work associated with a group or project.",[38,303,305],{"id":304},"technological-controls","Technological controls",[43,307,308,316],{},[46,309,310],{},[49,311,312,314],{},[52,313,54],{},[52,315,57],{},[59,317,318,326,334,342,350],{},[49,319,320,323],{},[64,321,322],{},"8.8 Management of technical vulnerabilities",[64,324,325],{},"Information about technical vulnerabilities of information systems in use shall be obtained, the organization’s exposure to such vulnerabilities shall be evaluated and appropriate measures shall be taken.",[49,327,328,331],{},[64,329,330],{},"8.9 Configuration management",[64,332,333],{},"Configurations, including security configurations, of hardware, software, services and networks shall be established, documented, implemented, monitored, and reviewed.",[49,335,336,339],{},[64,337,338],{},"8.25 Secure development lifecycle",[64,340,341],{},"Rules for the secure development of software and systems shall be established and applied.",[49,343,344,347],{},[64,345,346],{},"8.26 Application security requirements",[64,348,349],{},"Information security requirements shall be identified, specified, and approved when developing or acquiring applications.",[49,351,352,355],{},[64,353,354],{},"8.27 Secure system architecture and engineering principles",[64,356,357],{},"Principles for engineering secure systems shall be established, documented, maintained, and applied to any information system development activities",[12,359,360,361,364,365,370,371,376],{},"With GitLab, you can store your hardware and software configurations, maintain version control, update your configurations via ",[22,362,256],{"href":254,"rel":363},[],", and leverage GitLab’s ",[22,366,369],{"href":367,"rel":368},"https://docs.gitlab.com/ci/pipelines/",[],"CI/CD pipelines"," to push those configurations to your applications and infrastructure. GitLab enables organizations to implement ",[22,372,375],{"href":373,"rel":374},"https://about.gitlab.com/topics/gitops/",[],"GitOps","\nthrough a single platform.",[12,378,213,379,384],{},[22,380,383],{"href":381,"rel":382},"https://docs.gitlab.com/user/application_security/iac_scanning/",[],"infrastructure-as-code scanning","\nfunctionality enables you to scan your IaC configuration files for known vulnerabilities. GitLab’s IaC scanning supports a variety of IaC configuration files and languages making it adaptable to different tech stacks.",[12,386,387],{},"For compliance professionals, GitLab enables you to implement automation through compliance frameworks\nand compliance pipelines.\nThese features enable users to identify critical projects that have certain compliance requirements and push configurations to those projects via pipelines. They enable consistent enforcement of controls, thereby supporting your security posture and facilitating adherence to your organization’s internal and external compliance requirements.",[12,389,390,391,396,397,402,403,408],{},"For ",[22,392,395],{"href":393,"rel":394},"https://about.gitlab.com/pricing/ultimate/",[],"Ultimate"," customers,\nGitLab’s ",[22,398,401],{"href":399,"rel":400},"https://docs.gitlab.com/user/compliance/compliance_center/",[],"Compliance\nCenter","\nprovides a centralized view of a group’s compliance posture, such as the different compliance frameworks being applied to the projects in the group.\nYou can even see how well you comply with the ",[22,404,407],{"href":405,"rel":406},"https://docs.gitlab.com/user/compliance/compliance_center/#gitlab-standard",[],"GitLab\nStandard",".",[178,410],{},[43,412,413,421],{},[46,414,415],{},[49,416,417,419],{},[52,418,54],{},[52,420,57],{},[59,422,423,431],{},[49,424,425,428],{},[64,426,427],{},"8.15 Logging",[64,429,430],{},"Logs that record activities, exceptions, faults and other relevant events shall be produced, stored, protected, and analyzed.",[49,432,433,436],{},[64,434,435],{},"8.16 Monitoring activities Control",[64,437,438],{},"Networks, systems, and applications shall be monitored for anomalous behavior and appropriate actions taken to evaluate potential information security incidents.",[12,440,441],{},"With GitLab, you can use audit events to track important events, including who performed the related action and when.\nAudit events cover a broad range of categories, including:",[112,443,444,447,450,453,456,459],{},[115,445,446],{},"Group management",[115,448,449],{},"Authentication and authorization",[115,451,452],{},"User management",[115,454,455],{},"Compliance and security",[115,457,458],{},"CI/CD",[115,460,461],{},"GitLab Runners",[12,463,464],{},[280,465],{"alt":466,"src":467},"Audit events","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782397834/blog/Content%20Images/2023-08-24-how-gitlab-can-support-your-iso-compliance-journey/example-of-an-audit-event.png",[12,469,470],{},"Example of an audit event",[12,472,390,473,476],{},[22,474,395],{"href":393,"rel":475},[]," customers, audit event streaming\ncan be enabled. Audit event streaming enables users to set a streaming destination for a top-level group or instance to receive all audit events about the group, subgroups, and projects, as structured JSON.",[178,478],{},[43,480,481,489],{},[46,482,483],{},[49,484,485,487],{},[52,486,54],{},[52,488,57],{},[59,490,491,499],{},[49,492,493,496],{},[64,494,495],{},"8.28 Secure coding",[64,497,498],{},"Secure coding principles shall be applied to software development.",[49,500,501,504],{},[64,502,503],{},"8.29 Security testing in development and acceptance",[64,505,506],{},"Security testing processes shall be defined and implemented in the development lifecycle.",[12,508,509,510,514],{},"You can use the features in GitLab’s ",[22,511,513],{"href":205,"rel":512},[],"Secure"," stage to enhance your software development lifecycle and improve the security of your products. GitLab’s Secure stage features include:",[112,516,517,524,531,538,545],{},[115,518,519],{},[22,520,523],{"href":521,"rel":522},"https://docs.gitlab.com/user/application_security/sast/",[],"Static application security testing\n(SAST)",[115,525,526],{},[22,527,530],{"href":528,"rel":529},"https://docs.gitlab.com/user/application_security/dast/",[],"Dynamic application security testing\n(DAST)",[115,532,533],{},[22,534,537],{"href":535,"rel":536},"https://docs.gitlab.com/ci/testing/code_quality/",[],"Code quality",[115,539,540],{},[22,541,544],{"href":542,"rel":543},"https://docs.gitlab.com/user/application_security/container_scanning/",[],"Container\nscanning",[115,546,547],{},[22,548,551],{"href":549,"rel":550},"https://docs.gitlab.com/user/application_security/dependency_scanning/",[],"Dependency\nscanning",[12,553,554],{},"And much more!",[12,556,557],{},[280,558],{"alt":559,"src":560},"Code quality findings","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782397834/blog/Content%20Images/2023-08-24-how-gitlab-can-support-your-iso-compliance-journey/code-quality-findings.png",[12,562,559],{},[12,564,565,566,571],{},"Leaked secrets is one of the leading catalysts of security breaches.\nGitLab’s ",[22,567,570],{"href":568,"rel":569},"https://docs.gitlab.com/user/application_security/secret_detection/",[],"Secret\nDetection","\nscans your repository to help prevent your secrets from being exposed.",[12,573,213,574,579,580,583,584,589],{},[22,575,578],{"href":576,"rel":577},"https://docs.gitlab.com/user/application_security/policies/",[],"Policies","\nfeature enables users to implement scan execution\nand scan result\npolicies based on configured logic. These policies combine the scanning capabilities in the ",[22,581,513],{"href":205,"rel":582},[]," stage with ",[22,585,588],{"href":586,"rel":587},"https://docs.gitlab.com/user/project/merge_requests/approvals/",[],"merge request approvals","\nto further enforce compliance requirements.",[12,591,592],{},"Together, GitLab’s Secure features create a foundation for a secure software development lifecycle program and enable you to implement secure coding principles in accordance with your organization’s requirements.",[178,594],{},[43,596,597,605],{},[46,598,599],{},[49,600,601,603],{},[52,602,54],{},[52,604,57],{},[59,606,607],{},[49,608,609,612],{},[64,610,611],{},"8.32 Change management",[64,613,614],{},"Changes to information processing facilities and information systems shall be subject to change management procedures.",[12,616,617],{},"GitLab offers many features to support a comprehensive change management program.",[12,619,620],{},"GitLab’s source code management features enable users to implement protected branches.\nProtected branches allow GitLab users to impose restrictions on certain branches that are considered critical to their operations. A protected branch controls:",[112,622,623,626,629,632,635],{},[115,624,625],{},"which users can merge into the branch",[115,627,628],{},"which users can push to the branch",[115,630,631],{},"if users can force push to the branch",[115,633,634],{},"if changes to files listed in the CODEOWNERS file can be pushed directly\nto the branch",[115,636,637],{},"which users can unprotect the branch",[12,639,640,641,646],{},"The ",[22,642,645],{"href":643,"rel":644},"https://docs.gitlab.com/user/project/repository/branches/default/",[],"default branch","\nin a repository is automatically designated as a protected branch.",[12,648,649],{},[280,650],{"alt":651,"src":652},"Protected branches","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782397834/blog/Content%20Images/2023-08-24-how-gitlab-can-support-your-iso-compliance-journey/protected-branches-settings-within-gitlab.png",[12,654,655],{},"Protected branches settings within GitLab",[12,657,658],{},"Merge requests (MR) are a core component of the software development lifecycle. GitLab users can configure their MRs so that they must be approved before they can be merged. MR approvals allow users to set the minimum number of required approvals before work can merge into a project.\nSome examples of rules you can create include:",[112,660,661,664,672,681],{},[115,662,663],{},"Users with specific permissions can always approve work.",[115,665,666,671],{},[22,667,670],{"href":668,"rel":669},"https://docs.gitlab.com/user/project/codeowners/",[],"Code\nowners"," can approve work for files they own.",[115,673,674,675,680],{},"Users with specific permissions can approve work, ",[22,676,679],{"href":677,"rel":678},"https://docs.gitlab.com/user/project/merge_requests/approvals/rules/#merge-request-approval-segregation-of-duties",[],"even if they don’t have\nmerge rights","\nto the repository.",[115,682,683,684,408],{},"Users with specific permissions can be allowed or denied the ability to\n",[22,685,688],{"href":686,"rel":687},"https://docs.gitlab.com/user/project/merge_requests/approvals/rules/#edit-or-override-merge-request-approval-rules",[],"override approval rules on a specific merge request",[12,690,691,692,164,695,698,699,702,703,707],{},"As previously mentioned, ",[22,693,232],{"href":230,"rel":694},[],[22,696,238],{"href":236,"rel":697},[]," can be used to document and collaborate on change requests. ",[22,700,244],{"href":242,"rel":701},[],"\nenable users to apply a consistent description to issues or ",[22,704,706],{"href":254,"rel":705},[],"MRs",".\nThese templates support a consistent approach to requesting changes in a manner that best fits your organization.",[38,709,711],{"id":710},"learn-more","Learn more",[12,713,714],{},"As a comprehensive DevSecOps platform, GitLab supports a broad range of requirements. ISO added additional controls around secure coding and configuration management in the 2022 edition of the ISO standard. This demonstrates that certifying bodies have an increased focus on software security as a whole. As a strategic partner, GitLab can help support your\nISO 27001 compliance journey and help you develop better software faster.",[12,716,717,718,408],{},"To learn more about these features, see our library of ",[22,719,722],{"href":720,"rel":721},"https://docs.gitlab.com/tutorials/",[],"tutorials",{"title":724,"searchDepth":725,"depth":725,"links":726},"",2,[727,728,729],{"id":40,"depth":725,"text":41},{"id":304,"depth":725,"text":305},{"id":710,"depth":725,"text":711},"security","2023-09-06","As a strategic partner, GitLab's software security features can help support your ISO 27001 compliance.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662877/Blog/Hero%20Images/security-cover-new.png",{},true,"/en-us/blog/how-gitlab-can-support-your-iso-compliance-journey",{"ogTitle":5,"ogImage":736,"ogDescription":732,"ogSiteName":741,"noIndex":735,"ogType":742,"ogUrl":743,"title":5,"canonicalUrls":743,"description":732},"https://about.gitlab.com","article","https://about.gitlab.com/blog/how-gitlab-can-support-your-iso-compliance-journey","how-gitlab-can-support-your-iso-compliance-journey","en-us/blog/how-gitlab-can-support-your-iso-compliance-journey",[730,747,748],"features","customers","BlogPost","YpQW-ORsk6XKNgd5XCM5HXxfvxtjn0p5HQ7sdUrlQ3A",{"logo":752,"freeTrial":757,"sales":762,"login":767,"items":772,"search":1096,"minimal":1127,"duo":1146,"switchNav":1155,"pricingDeployment":1166},{"config":753},{"href":754,"dataGaName":755,"dataGaLocation":756},"/","gitlab logo","header",{"text":758,"config":759},"Get free trial",{"href":760,"dataGaName":761,"dataGaLocation":756},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":763,"config":764},"Request a demo",{"href":765,"dataGaName":766,"dataGaLocation":756},"/sales/?contact-topic=request-demo","sales",{"text":768,"config":769},"Sign in",{"href":770,"dataGaName":771,"dataGaLocation":756},"https://gitlab.com/users/sign_in/","sign in",[773,801,900,905,1019,1074],{"text":774,"config":775,"menu":777},"Platform",{"dataNavLevelOne":776},"platform",{"type":778,"columns":779},"cards",[780,786,794],{"title":774,"description":781,"link":782},"The intelligent orchestration platform for DevSecOps",{"text":783,"config":784},"Explore our Platform",{"href":785,"dataGaName":776,"dataGaLocation":756},"/platform/",{"title":787,"description":788,"link":789},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":790,"config":791},"Meet GitLab Duo",{"href":792,"dataGaName":793,"dataGaLocation":756},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":795,"description":796,"link":797},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":711,"config":798},{"href":799,"dataGaName":800,"dataGaLocation":756},"/why-gitlab/","why gitlab",{"text":802,"left":738,"config":803,"menu":805},"Product",{"dataNavLevelOne":804},"solutions",{"type":806,"link":807,"columns":811,"feature":879},"lists",{"text":808,"config":809},"View all Solutions",{"href":810,"dataGaName":804,"dataGaLocation":756},"/solutions/",[812,835,858],{"title":813,"description":814,"link":815,"items":820},"Automation","CI/CD and automation to accelerate deployment",{"config":816},{"icon":817,"href":818,"dataGaName":819,"dataGaLocation":756},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[821,824,827,831],{"text":458,"config":822},{"href":823,"dataGaLocation":756,"dataGaName":458},"/solutions/continuous-integration/",{"text":787,"config":825},{"href":792,"dataGaLocation":756,"dataGaName":826},"gitlab duo agent platform - product menu",{"text":828,"config":829},"Source Code Management",{"href":830,"dataGaLocation":756,"dataGaName":828},"/solutions/source-code-management/",{"text":832,"config":833},"Automated Software Delivery",{"href":818,"dataGaLocation":756,"dataGaName":834},"Automated software delivery",{"title":836,"description":837,"link":838,"items":843},"Security","Deliver code faster without compromising security",{"config":839},{"href":840,"dataGaName":841,"dataGaLocation":756,"icon":842},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[844,848,853],{"text":845,"config":846},"Application Security Testing",{"href":840,"dataGaName":847,"dataGaLocation":756},"Application security testing",{"text":849,"config":850},"Software Supply Chain Security",{"href":851,"dataGaLocation":756,"dataGaName":852},"/solutions/supply-chain/","Software supply chain security",{"text":854,"config":855},"Software Compliance",{"href":856,"dataGaName":857,"dataGaLocation":756},"/solutions/software-compliance/","software compliance",{"title":859,"link":860,"items":865},"Measurement",{"config":861},{"icon":862,"href":863,"dataGaName":864,"dataGaLocation":756},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[866,870,874],{"text":867,"config":868},"Visibility & Measurement",{"href":863,"dataGaLocation":756,"dataGaName":869},"Visibility and Measurement",{"text":871,"config":872},"Value Stream Management",{"href":873,"dataGaLocation":756,"dataGaName":871},"/solutions/value-stream-management/",{"text":875,"config":876},"Analytics & Insights",{"href":877,"dataGaLocation":756,"dataGaName":878},"/solutions/analytics-and-insights/","Analytics and insights",{"title":880,"type":806,"items":881},"GitLab for",[882,888,894],{"text":883,"config":884},"Enterprise",{"icon":885,"href":886,"dataGaLocation":756,"dataGaName":887},"Building","/enterprise/","enterprise",{"text":889,"config":890},"Small Business",{"icon":891,"href":892,"dataGaLocation":756,"dataGaName":893},"Work","/small-business/","small business",{"text":895,"config":896},"Public Sector",{"icon":897,"href":898,"dataGaLocation":756,"dataGaName":899},"Organization","/solutions/public-sector/","public sector",{"text":901,"config":902},"Pricing",{"href":903,"dataGaName":904,"dataGaLocation":756,"dataNavLevelOne":904},"/pricing/","pricing",{"text":906,"config":907,"menu":909},"Resources",{"dataNavLevelOne":908},"resources",{"type":806,"link":910,"columns":914,"feature":1008},{"text":911,"config":912},"View all resources",{"href":913,"dataGaName":908,"dataGaLocation":756},"/resources/",[915,948,975],{"title":916,"items":917},"Getting started",[918,923,928,933,938,943],{"text":919,"config":920},"Install",{"href":921,"dataGaName":922,"dataGaLocation":756},"/install/","install",{"text":924,"config":925},"Quick start guides",{"href":926,"dataGaName":927,"dataGaLocation":756},"/get-started/","quick setup checklists",{"text":929,"config":930},"Learn",{"href":931,"dataGaLocation":756,"dataGaName":932},"https://university.gitlab.com/","learn",{"text":934,"config":935},"Product documentation",{"href":936,"dataGaName":937,"dataGaLocation":756},"https://docs.gitlab.com/","product documentation",{"text":939,"config":940},"Best practice videos",{"href":941,"dataGaName":942,"dataGaLocation":756},"/getting-started-videos/","best practice videos",{"text":944,"config":945},"Integrations",{"href":946,"dataGaName":947,"dataGaLocation":756},"/integrations/","integrations",{"title":949,"items":950},"Discover",[951,956,961,966,970],{"text":952,"config":953},"Customer success stories",{"href":954,"dataGaName":955,"dataGaLocation":756},"/customers/","customer success stories",{"text":957,"config":958},"Blog",{"href":959,"dataGaName":960,"dataGaLocation":756},"/blog/","blog",{"text":962,"config":963},"Demo Hub",{"href":964,"dataGaName":965,"dataGaLocation":756},"/demo-hub/","demo hub",{"text":967,"config":968},"The Source",{"href":969,"dataGaName":960,"dataGaLocation":756},"/the-source/",{"text":971,"config":972},"Remote",{"href":973,"dataGaName":974,"dataGaLocation":756},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":976,"items":977},"Connect",[978,983,988,993,998,1003],{"text":979,"config":980},"GitLab Services",{"href":981,"dataGaName":982,"dataGaLocation":756},"/services/","services",{"text":984,"config":985},"Contribute",{"href":986,"dataGaName":987,"dataGaLocation":756},"https://contributors.gitlab.com","contribute",{"text":989,"config":990},"Community",{"href":991,"dataGaName":992,"dataGaLocation":756},"/community/","community",{"text":994,"config":995},"Forum",{"href":996,"dataGaName":997,"dataGaLocation":756},"https://forum.gitlab.com/","forum",{"text":999,"config":1000},"Events",{"href":1001,"dataGaName":1002,"dataGaLocation":756},"/events/","events",{"text":1004,"config":1005},"Partners",{"href":1006,"dataGaName":1007,"dataGaLocation":756},"/partners/","partners",{"config":1009,"title":1012,"text":1013,"link":1014},{"background":1010,"textColor":1011},"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":1015,"config":1016},"Read the latest",{"href":1017,"dataGaName":1018,"dataGaLocation":756},"/whats-new/","whats new",{"text":1020,"config":1021,"menu":1023},"Company",{"dataNavLevelOne":1022},"company",{"type":806,"columns":1024},[1025],{"items":1026},[1027,1032,1038,1040,1045,1050,1055,1059,1064,1069],{"text":1028,"config":1029},"About",{"href":1030,"dataGaName":1031,"dataGaLocation":756},"/company/","about",{"text":1033,"config":1034,"footerGa":1037},"Jobs",{"href":1035,"dataGaName":1036,"dataGaLocation":756},"/jobs/","jobs",{"dataGaName":1036},{"text":999,"config":1039},{"href":1001,"dataGaName":1002,"dataGaLocation":756},{"text":1041,"config":1042},"Leadership",{"href":1043,"dataGaName":1044,"dataGaLocation":756},"/company/team/e-group/","leadership",{"text":1046,"config":1047},"Handbook",{"href":1048,"dataGaName":1049,"dataGaLocation":756},"https://handbook.gitlab.com/","handbook",{"text":1051,"config":1052},"Investor relations",{"href":1053,"dataGaName":1054,"dataGaLocation":756},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":32,"config":1056},{"href":1057,"dataGaName":1058,"dataGaLocation":756},"/security/","trust center",{"text":1060,"config":1061},"AI Transparency Center",{"href":1062,"dataGaName":1063,"dataGaLocation":756},"/ai-transparency-center/","ai transparency center",{"text":1065,"config":1066},"Newsletter",{"href":1067,"dataGaName":1068,"dataGaLocation":756},"/company/contact/#contact-forms","newsletter",{"text":1070,"config":1071},"Press",{"href":1072,"dataGaName":1073,"dataGaLocation":756},"/press/","press",{"text":1075,"config":1076,"menu":1077},"Contact us",{"dataNavLevelOne":1022},{"type":806,"columns":1078},[1079],{"items":1080},[1081,1086,1091],{"text":1082,"config":1083},"Talk to sales",{"href":1084,"dataGaName":1085,"dataGaLocation":756},"/sales/","talk to sales",{"text":1087,"config":1088},"Support portal",{"href":1089,"dataGaName":1090,"dataGaLocation":756},"https://support.gitlab.com/hc/en-us","support portal",{"text":1092,"config":1093},"Customer portal",{"href":1094,"dataGaName":1095,"dataGaLocation":756},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":1097,"login":1098,"suggestions":1105},"Close",{"text":1099,"link":1100},"To search repositories and projects, login to",{"text":1101,"config":1102},"gitlab.com",{"href":770,"dataGaName":1103,"dataGaLocation":1104},"search login","search",{"text":1106,"default":1107},"Suggestions",[1108,1110,1114,1116,1120,1124],{"text":787,"config":1109},{"href":792,"dataGaName":787,"dataGaLocation":1104},{"text":1111,"config":1112},"Code Suggestions (AI)",{"href":1113,"dataGaName":1111,"dataGaLocation":1104},"/solutions/code-suggestions/",{"text":458,"config":1115},{"href":823,"dataGaName":458,"dataGaLocation":1104},{"text":1117,"config":1118},"GitLab on AWS",{"href":1119,"dataGaName":1117,"dataGaLocation":1104},"/partners/technology-partners/aws/",{"text":1121,"config":1122},"GitLab on Google Cloud",{"href":1123,"dataGaName":1121,"dataGaLocation":1104},"/partners/technology-partners/google-cloud-platform/",{"text":1125,"config":1126},"Why GitLab?",{"href":799,"dataGaName":1125,"dataGaLocation":1104},{"freeTrial":1128,"mobileIcon":1133,"desktopIcon":1138,"secondaryButton":1141},{"text":1129,"config":1130},"Start free trial",{"href":1131,"dataGaName":761,"dataGaLocation":1132},"https://gitlab.com/-/trials/new/","nav",{"altText":1134,"config":1135},"Gitlab Icon",{"src":1136,"dataGaName":1137,"dataGaLocation":1132},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":1134,"config":1139},{"src":1140,"dataGaName":1137,"dataGaLocation":1132},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":1142,"config":1143},"Get Started",{"href":1144,"dataGaName":1145,"dataGaLocation":1132},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":1147,"mobileIcon":1151,"desktopIcon":1153},{"text":1148,"config":1149},"Learn more about GitLab Duo",{"href":792,"dataGaName":1150,"dataGaLocation":1132},"gitlab duo",{"altText":1134,"config":1152},{"src":1136,"dataGaName":1137,"dataGaLocation":1132},{"altText":1134,"config":1154},{"src":1140,"dataGaName":1137,"dataGaLocation":1132},{"button":1156,"mobileIcon":1161,"desktopIcon":1163},{"text":1157,"config":1158},"/switch",{"href":1159,"dataGaName":1160,"dataGaLocation":1132},"#contact","switch",{"altText":1134,"config":1162},{"src":1136,"dataGaName":1137,"dataGaLocation":1132},{"altText":1134,"config":1164},{"src":1165,"dataGaName":1137,"dataGaLocation":1132},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":1167,"mobileIcon":1172,"desktopIcon":1174},{"text":1168,"config":1169},"Back to pricing",{"href":903,"dataGaName":1170,"dataGaLocation":1132,"icon":1171},"back to pricing","GoBack",{"altText":1134,"config":1173},{"src":1136,"dataGaName":1137,"dataGaLocation":1132},{"altText":1134,"config":1175},{"src":1140,"dataGaName":1137,"dataGaLocation":1132},{"title":1177,"titleMobile":1178,"button":1179,"config":1184},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":711,"config":1180},{"href":1181,"dataGaName":1182,"dataGaLocation":1183},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":1185,"disabled":735},"release",{"data":1187},{"text":1188,"source":1189,"edit":1195,"contribute":1200,"config":1205,"items":1210,"minimal":1419},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":1190,"config":1191},"View page source",{"href":1192,"dataGaName":1193,"dataGaLocation":1194},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":1196,"config":1197},"Edit this page",{"href":1198,"dataGaName":1199,"dataGaLocation":1194},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":1201,"config":1202},"Please contribute",{"href":1203,"dataGaName":1204,"dataGaLocation":1194},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":1206,"facebook":1207,"youtube":1208,"linkedin":1209},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[1211,1258,1311,1355,1387],{"title":901,"links":1212,"subMenu":1227},[1213,1217,1222],{"text":1214,"config":1215},"View plans",{"href":903,"dataGaName":1216,"dataGaLocation":1194},"view plans",{"text":1218,"config":1219},"Why Premium?",{"href":1220,"dataGaName":1221,"dataGaLocation":1194},"/pricing/premium/","why premium",{"text":1223,"config":1224},"Why Ultimate?",{"href":1225,"dataGaName":1226,"dataGaLocation":1194},"/pricing/ultimate/","why ultimate",[1228],{"title":1229,"links":1230},"Contact Us",[1231,1234,1236,1238,1243,1248,1253],{"text":1232,"config":1233},"Contact sales",{"href":1084,"dataGaName":766,"dataGaLocation":1194},{"text":1087,"config":1235},{"href":1089,"dataGaName":1090,"dataGaLocation":1194},{"text":1092,"config":1237},{"href":1094,"dataGaName":1095,"dataGaLocation":1194},{"text":1239,"config":1240},"Status",{"href":1241,"dataGaName":1242,"dataGaLocation":1194},"https://status.gitlab.com/","status",{"text":1244,"config":1245},"Terms of use",{"href":1246,"dataGaName":1247,"dataGaLocation":1194},"/terms/","terms of use",{"text":1249,"config":1250},"Privacy statement",{"href":1251,"dataGaName":1252,"dataGaLocation":1194},"/privacy/","privacy statement",{"text":1254,"config":1255},"Cookie preferences",{"dataGaName":1256,"dataGaLocation":1194,"id":1257,"isOneTrustButton":738},"cookie preferences","ot-sdk-btn",{"title":802,"links":1259,"subMenu":1268},[1260,1264],{"text":1261,"config":1262},"DevSecOps platform",{"href":785,"dataGaName":1263,"dataGaLocation":1194},"devsecops platform",{"text":1265,"config":1266},"AI-Assisted Development",{"href":792,"dataGaName":1267,"dataGaLocation":1194},"ai-assisted development",[1269],{"title":1270,"links":1271},"Topics",[1272,1277,1281,1286,1291,1296,1301,1306],{"text":1273,"config":1274},"CICD",{"href":1275,"dataGaName":1276,"dataGaLocation":1194},"/topics/ci-cd/","cicd",{"text":375,"config":1278},{"href":1279,"dataGaName":1280,"dataGaLocation":1194},"/topics/gitops/","gitops",{"text":1282,"config":1283},"DevOps",{"href":1284,"dataGaName":1285,"dataGaLocation":1194},"/topics/devops/","devops",{"text":1287,"config":1288},"Version Control",{"href":1289,"dataGaName":1290,"dataGaLocation":1194},"/topics/version-control/","version control",{"text":1292,"config":1293},"DevSecOps",{"href":1294,"dataGaName":1295,"dataGaLocation":1194},"/topics/devsecops/","devsecops",{"text":1297,"config":1298},"Cloud Native",{"href":1299,"dataGaName":1300,"dataGaLocation":1194},"/topics/cloud-native/","cloud native",{"text":1302,"config":1303},"AI for Coding",{"href":1304,"dataGaName":1305,"dataGaLocation":1194},"/topics/devops/ai-for-coding/","ai for coding",{"text":1307,"config":1308},"Agentic AI",{"href":1309,"dataGaName":1310,"dataGaLocation":1194},"/topics/agentic-ai/","agentic ai",{"title":1312,"links":1313},"Solutions",[1314,1316,1318,1323,1327,1330,1334,1337,1339,1342,1345,1350],{"text":845,"config":1315},{"href":840,"dataGaName":845,"dataGaLocation":1194},{"text":834,"config":1317},{"href":818,"dataGaName":819,"dataGaLocation":1194},{"text":1319,"config":1320},"Agile development",{"href":1321,"dataGaName":1322,"dataGaLocation":1194},"/solutions/agile-delivery/","agile delivery",{"text":1324,"config":1325},"SCM",{"href":830,"dataGaName":1326,"dataGaLocation":1194},"source code management",{"text":1273,"config":1328},{"href":823,"dataGaName":1329,"dataGaLocation":1194},"continuous integration & delivery",{"text":1331,"config":1332},"Value stream management",{"href":873,"dataGaName":1333,"dataGaLocation":1194},"value stream management",{"text":375,"config":1335},{"href":1336,"dataGaName":1280,"dataGaLocation":1194},"/solutions/gitops/",{"text":883,"config":1338},{"href":886,"dataGaName":887,"dataGaLocation":1194},{"text":1340,"config":1341},"Small business",{"href":892,"dataGaName":893,"dataGaLocation":1194},{"text":1343,"config":1344},"Public sector",{"href":898,"dataGaName":899,"dataGaLocation":1194},{"text":1346,"config":1347},"Education",{"href":1348,"dataGaName":1349,"dataGaLocation":1194},"/solutions/education/","education",{"text":1351,"config":1352},"Financial services",{"href":1353,"dataGaName":1354,"dataGaLocation":1194},"/solutions/finance/","financial services",{"title":906,"links":1356},[1357,1359,1361,1363,1366,1368,1371,1373,1375,1377,1379,1381,1383,1385],{"text":919,"config":1358},{"href":921,"dataGaName":922,"dataGaLocation":1194},{"text":924,"config":1360},{"href":926,"dataGaName":927,"dataGaLocation":1194},{"text":929,"config":1362},{"href":931,"dataGaName":932,"dataGaLocation":1194},{"text":934,"config":1364},{"href":936,"dataGaName":1365,"dataGaLocation":1194},"docs",{"text":957,"config":1367},{"href":959,"dataGaName":960,"dataGaLocation":1194},{"text":1369,"config":1370},"What's new",{"href":1017,"dataGaName":1018,"dataGaLocation":1194},{"text":952,"config":1372},{"href":954,"dataGaName":955,"dataGaLocation":1194},{"text":971,"config":1374},{"href":973,"dataGaName":974,"dataGaLocation":1194},{"text":979,"config":1376},{"href":981,"dataGaName":982,"dataGaLocation":1194},{"text":984,"config":1378},{"href":986,"dataGaName":987,"dataGaLocation":1194},{"text":989,"config":1380},{"href":991,"dataGaName":992,"dataGaLocation":1194},{"text":994,"config":1382},{"href":996,"dataGaName":997,"dataGaLocation":1194},{"text":999,"config":1384},{"href":1001,"dataGaName":1002,"dataGaLocation":1194},{"text":1004,"config":1386},{"href":1006,"dataGaName":1007,"dataGaLocation":1194},{"title":1020,"links":1388},[1389,1391,1393,1395,1397,1399,1403,1408,1410,1412,1414],{"text":1028,"config":1390},{"href":1030,"dataGaName":1022,"dataGaLocation":1194},{"text":1033,"config":1392},{"href":1035,"dataGaName":1036,"dataGaLocation":1194},{"text":1041,"config":1394},{"href":1043,"dataGaName":1044,"dataGaLocation":1194},{"text":1046,"config":1396},{"href":1048,"dataGaName":1049,"dataGaLocation":1194},{"text":1051,"config":1398},{"href":1053,"dataGaName":1054,"dataGaLocation":1194},{"text":1400,"config":1401},"Sustainability",{"href":1402,"dataGaName":1400,"dataGaLocation":1194},"/sustainability/",{"text":1404,"config":1405},"Diversity, inclusion and belonging (DIB)",{"href":1406,"dataGaName":1407,"dataGaLocation":1194},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":32,"config":1409},{"href":1057,"dataGaName":1058,"dataGaLocation":1194},{"text":1065,"config":1411},{"href":1067,"dataGaName":1068,"dataGaLocation":1194},{"text":1070,"config":1413},{"href":1072,"dataGaName":1073,"dataGaLocation":1194},{"text":1415,"config":1416},"Modern Slavery Transparency Statement",{"href":1417,"dataGaName":1418,"dataGaLocation":1194},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":1420},[1421,1424,1427],{"text":1422,"config":1423},"Terms",{"href":1246,"dataGaName":1247,"dataGaLocation":1194},{"text":1425,"config":1426},"Cookies",{"dataGaName":1256,"dataGaLocation":1194,"id":1257,"isOneTrustButton":738},{"text":1428,"config":1429},"Privacy",{"href":1251,"dataGaName":1252,"dataGaLocation":1194},[1431],{"id":1432,"title":7,"body":734,"config":1433,"content":1435,"description":734,"extension":1439,"meta":1440,"navigation":738,"path":1441,"seo":1442,"stem":1443,"__hash__":1444},"blogAuthors/en-us/blog/authors/joseph-longo.yml",{"template":1434},"BlogAuthor",{"name":7,"config":1436},{"headshot":1437,"ctfId":1438},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659681/Blog/Author%20Headshots/jlongo_gitlab-headshot.jpg","jlongogitlab","yml",{},"/en-us/blog/authors/joseph-longo",{},"en-us/blog/authors/joseph-longo","VIlsk9hPcH3cl865aygtOArC3lR9vjVvQqDgvE-S7qU",[1446,1454,1462],{"title":1447,"description":1448,"heroImage":1449,"category":730,"date":1450,"authors":1451,"slug":1453,"externalUrl":734},"How GitLab tracks vulnerabilities through refactors and reformatting","Learn how GitLab's improved Scope+Offset fingerprinting keeps vulnerability tracking stable across comments, blank lines, and reformatting.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1759320418/xjmqcozxzt4frx0hori3.png","2026-08-12",[1452],"Julian Thome","improved-scope-offset-fingerprinting",{"title":1455,"description":1456,"heroImage":1449,"category":730,"date":1457,"authors":1458,"slug":1461,"externalUrl":734},"GitLab Secrets Manager adds ESO, Terraform, API support","Simplify credential management across your stack. GitLab Secrets Manager provides secure retrieval in Kubernetes, Terraform, and external workflows.","2026-08-06",[1459,1460],"Erick Bajao","Joe Randazzo","gitlab-secrets-manager-add-eso-terraform-api-support",{"title":1463,"description":1464,"heroImage":1465,"category":730,"date":1466,"authors":1467,"slug":1469,"externalUrl":734},"Secure every commit to production with Claude and GitLab","Claude Security catches vulnerabilities inside a coding session. GitLab picks up from there, scanning, enforcing policy, and producing audit evidence for the software lifecycle. ","https://res.cloudinary.com/about-gitlab-com/image/upload/v1756122536/akivvcnafog9c4dhhzkp.png","2026-08-03",[1468],"Alisa Ho","claude-security-and-gitlab",{"promotions":1471},[1472,1486,1498,1509],{"id":1473,"categories":1474,"header":1476,"text":1477,"button":1478,"image":1483},"ai-modernization",[1475],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":1479,"config":1480},"Get your AI maturity score",{"href":1481,"dataGaName":1482,"dataGaLocation":960},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":1484},{"src":1485},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1487,"categories":1488,"header":1490,"text":1477,"button":1491,"image":1495},"devops-modernization",[1489,1295],"product","Are you just managing tools or shipping innovation?",{"text":1492,"config":1493},"Get your DevOps maturity score",{"href":1494,"dataGaName":1482,"dataGaLocation":960},"/assessments/devops-modernization-assessment/",{"config":1496},{"src":1497},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1499,"categories":1500,"header":1501,"text":1477,"button":1502,"image":1506},"security-modernization",[730],"Are you trading speed for security?",{"text":1503,"config":1504},"Get your security maturity score",{"href":1505,"dataGaName":1482,"dataGaLocation":960},"/assessments/security-modernization-assessment/",{"config":1507},{"src":1508},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1510,"paths":1511,"header":1514,"text":1515,"button":1516,"image":1521},"github-azure-migration",[1512,1513],"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":1517,"config":1518},"See how GitLab compares to GitHub",{"href":1519,"dataGaName":1520,"dataGaLocation":960},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1522},{"src":1497},{"header":1524,"blurb":1525,"button":1526,"secondaryButton":1531},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":1527,"config":1528},"Get your free trial",{"href":1529,"dataGaName":761,"dataGaLocation":1530},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":1232,"config":1532},{"href":1084,"dataGaName":766,"dataGaLocation":1530},1786803771105]