[{"data":1,"prerenderedAt":836},["ShallowReactive",2],{"/it-it/topics/ci-cd/cicd-pipeline/":3,"navigation-it-it":183,"banner-it-it":601,"footer-it-it":613,"next-steps-it-it":821},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":11,"_id":177,"_type":178,"title":7,"_source":179,"_file":180,"_stem":181,"_extension":182},"/it-it/topics/ci-cd/cicd-pipeline","ci-cd",false,"",{"title":9,"description":10},"Che cos'è una pipeline CI/CD?","GitLab Topics | What is a CI/CD pipeline?",[12,26,32,139,175],{"type":13,"componentName":13,"componentContent":14},"CommonBreadcrumbs",{"crumbs":15},[16,20,24],{"title":17,"config":18},"Industry topics",{"href":19},"/topics/",{"title":21,"config":22},"CI/CD",{"href":23},"/it-it/topics/ci-cd/",{"title":25},"Cicd pipeline",{"type":27,"componentName":27,"componentContent":28},"TopicsHero",{"title":9,"text":29,"config":30},"Le pipeline sono fondamentali per l'integrazione e la distribuzione continue (CI/CD). Scopri come funzionano le pipeline CI/CD e come automatizzano i test del codice e il processo di sviluppo.\n",{"id":31,"twoColumns":6},"che-cos'è-una-pipeline-ci/cd?",{"type":33,"componentName":33,"componentContent":34},"CommonSideNavigationWithTree",{"anchors":35,"components":82},{"text":36,"data":37},"On this page",[38,42,46,50,54,58,62,66,70,74,78],{"text":39,"config":40},"Panoramica della pipeline CI/CD",{"href":41},"#ci-cd-pipeline-overview",{"text":43,"config":44},"Definizione di pipeline CI/CD",{"href":45},"#ci-cd-pipelines-defined",{"text":47,"config":48},"Integrazione, distribuzione e deployment continui a confronto",{"href":49},"#continuous-integration-vs-continuous-delivery-vs-continuous-deployment",{"text":51,"config":52},"Stage della pipeline CI/CD",{"href":53},"#ci-cd-pipeline-stages",{"text":55,"config":56},"Strumenti della pipeline CI/CD",{"href":57},"#ci-cd-pipeline-tools",{"text":59,"config":60},"Cosa rende efficace una pipeline CI/CD?",{"href":61},"#what-makes-a-good-ci-cd-pipeline",{"text":63,"config":64},"Esempio di pipeline CI/CD",{"href":65},"#ci-cd-pipeline-example",{"text":67,"config":68},"Perché i leader IT dovrebbero utilizzare le pipeline CI/CD?",{"href":69},"#why-should-it-leaders-use-ci-cd-pipelines",{"text":71,"config":72},"Perché GitLab è sempre più diffuso?",{"href":73},"#why-is-everyone-moving-to-git-lab",{"text":75,"config":76},"In che modo le pipeline CI/CD supportano i team di DevOps",{"href":77},"#how-ci-cd-pipelines-support-dev-ops-teams",{"text":79,"config":80},"Conclusioni",{"href":81},"#conclusion",[83,89,94,99,104,109,114,119,124,129,134],{"type":84,"componentName":84,"componentContent":85},"TopicsCopy",{"header":39,"text":86,"config":87},"Per decenni, gli sviluppatori hanno cercato di automatizzare gli aspetti più ripetitivi e noiosi del processo di programmazione, in modo da potersi concentrare su quelli maggiormente stimolanti e ridurre il rischio di burnout. L'introduzione della CI/CD si è rivelata la soluzione ideale, in quanto permette di risolvere le problematiche più comuni che si affrontano durante l'integrazione di nuovo codice e l'esecuzione di test manuali.\n\n**Integrazione, distribuzione e deployment continui** ottimizzano il processo di assimilazione del contributo di team separati, convogliandolo in un unico prodotto finale. La CI/CD fornisce un singolo repository per l'archiviazione dei dati e automatizza l'integrazione e i test continui in modo coerente. Ma cos'è realmente una pipeline CI/CD e come funziona? Continua a leggere per trovare le risposte a queste domande e scoprire i vantaggi delle pipeline CI/CD per professionisti del settore e aziende.\n",{"id":88},"ci-cd-pipeline-overview",{"type":84,"componentName":84,"componentContent":90},{"header":43,"text":91,"config":92},"Una pipeline CI/CD rappresenta una serie di passaggi che ottimizzano il processo di distribuzione del software. Attraverso un approccio DevOps o Site Reliability Engineering, la CI/CD migliora lo sviluppo delle applicazioni tramite il monitoraggio e l'automazione. L'implementazione di test continui aiuta a velocizzare il processo di integrazione del software, in quanto permette di individuare e risolvere i problemi in maniera tempestiva e costante, riducendo la complessità e il tempo necessari per creare stub e driver.\n\nLe pipeline automatizzate aiutano a prevenire gli errori derivanti dai processi manuali, permettono di eseguire rapide iterazioni dei prodotti e forniscono un feedback coerente durante il processo di sviluppo. Ogni passaggio di una pipeline CI/CD è un sottoinsieme di attività raggruppate in fasi, un argomento che approfondiremo nel prosieguo di questo articolo.\n",{"id":93},"ci-cd-pipelines-defined",{"type":84,"componentName":84,"componentContent":95},{"header":47,"text":96,"config":97},"CI e CD sono pratiche comuni nell'ambito dello sviluppo moderno e best practice per DevOps. Mentre l'acronimo \"CI\" fa riferimento all'integrazione continua, \"CD\" può definire sia la distribuzione continua che il deployment continuo.\n\n  ### Integrazione continua\n\nNel frenetico mondo delle tecnologie di oggi, i team di sviluppo sono chiamati a lavorare contemporaneamente su diversi elementi di un'app. Se bisogna attendere fino alla data del merge per poter integrare le modifiche al ramo principale, il processo di sviluppo diviene più lento, articolato e anche frustrante. Poiché ogni team apporta le modifiche senza confrontarsi con gli altri, possono verificarsi conflitti fra i reparti.\n\nChi pratica l'integrazione continua esegue costantemente il merge delle modifiche in un repository centrale il più frequentemente possibile. Le modifiche vengono validate da una build automatizzata, con test di unità e integrazione atti a verificare che qualsiasi modifica apportata non abbia danneggiato l'applicazione. Se il test rileva un conflitto tra il nuovo codice e quello esistente, la CI permette di correggere i bug più rapidamente e con maggiore frequenza.\n\n*Requisiti*:\n- Test automatizzati per miglioramenti, nuove funzionalità e correzioni di bug\n- Merge frequenti delle modifiche, idealmente una volta al giorno\n- Un server di integrazione continua per monitorare il repository ed eseguire test sui nuovi commit\n\n*Vantaggi*:\n- I test automatizzati rilevano le regressioni in anticipo, riducendo il numero di bug che riescono a entrare in produzione.\n- I problemi con l'integrazione vengono risolti rapidamente, agevolando lo sviluppo della release.\n- Gli sviluppatori eseguono meno commutazioni di contesto perché vengono avvisati dei bug durante il processo di sviluppo.\n- I server CI eseguono centinaia di test in pochi secondi, riducendo i costi dei test.\n\n### Integrazione continua\n\nLa prima definizione di \"distribuzione continua\" si fonda sui principi della CI automatizzando il provisioning dell'infrastruttura e il deployment dell'applicazione in ambienti di test e produzione.\n\nIn una pipeline di distribuzione continua, le modifiche al codice vengono sviluppate, testate e pacchettizzate automaticamente in modo da consentirne il deployment in ogni ambiente e in qualsiasi momento. La CD può essere usata per attivare manualmente i deployment o estesa fino a includere il deployment continuo, con i deployment destinati a clienti e utenti finali che vengono anch'essi automatizzati.\n\n*Requisiti*:\n- Controllo della versione per tutti i file di codice e di configurazione\n- Un ambiente di staging per testare le nuove versioni del software\n- Un processo di deployment automatizzato e affidabile\n\n*Vantaggi*:\n- Distribuzione più rapida di nuove funzionalità e aggiornamenti ai clienti\n- Maggiore affidabilità e migliore qualità delle versioni del software\n- Rollback più semplice delle modifiche al codice, se necessario\n- Riduzione del rischio di errori manuali nel processo di deployment\n- Maggiore collaborazione tra i team di sviluppo e quelli operativi\n\n\n### Deployment continuo\n\nLa seconda definizione di CD e lo stage finale di una pipeline CI/CD è il deployment continuo. Le modifiche al codice vengono rilasciate automaticamente agli utenti finali una volta completati con successo i test predefiniti. Non esiste alcuna barriera manuale prima della produzione, ragion per cui l'automazione dei test deve essere estremamente affidabile e priva di falle.\n\nPer gli sviluppatori, ciò significa che le modifiche alle applicazioni cloud possono diventare operative in pochi istanti, agevolando la ricezione del feedback degli utenti così come le azioni basate su di essi. L'adozione di un approccio basato su pipeline CI/CD evita molti dei rischi associati al deployment, in quanto è più facile rilasciare le modifiche in piccoli batch anziché provare a distribuirle tutte in una volta.\n\n*Requisiti*:\n- Una suite di test di alta qualità\n- Capacità di documentare la produzione in tempo reale\n- Flag funzionalità (non negoziabili, in modo da agevolare il coordinamento con gli altri reparti)\n\n*Vantaggi*:\n- Non è necessario sospendere lo sviluppo per le nuove release, ottimizzando l'intero processo.\n- Le release sono più facili da correggere e meno rischiose.\n- I miglioramenti vengono apportati continuamente e tali incrementi nella qualità sono presentati ai clienti in modo tale da non lasciare spazio a dubbi o ambiguità.\n",{"id":98},"continuous-integration-vs-continuous-delivery-vs-continuous-deployment",{"type":84,"componentName":84,"componentContent":100},{"header":51,"text":101,"config":102},"Sebbene una pipeline CI/CD possa sembrare più difficile da gestire, è esattamente il contrario. Si tratta semplicemente di un processo che è possibile eseguire per distribuire nuovi prodotti in modo rapido e meno problematico. Senza la pipeline automatizzata, gli stessi passaggi andrebbero eseguiti manualmente, comportando un rallentamento del processo e una minore efficienza. Di seguito sono riportate le fasi di una pipeline CI/CD in DevOps. Un errore in qualsiasi fase attiva una notifica per avvisare il professionista incaricato. Se un prodotto supera tutti i test senza problemi, ogni membro del team riceve una notifica dopo ogni deployment riuscito nell'ambiente di produzione.\n\n### Origine\n\nUna pipeline viene solitamente attivata da un repository del codice sorgente. Le modifiche al codice attivano una notifica nello strumento della pipeline CI/CD, che gestisce la pipeline corrispondente. Una pipeline può essere attivata anche dai flussi di lavoro avviati dall'utente o pianificati automaticamente, oppure dai risultati di altre pipeline.\n\n### Sviluppo\n\nDurante la fase di sviluppo, i tecnici specializzati condividono il codice sviluppato tramite un repository per creare un'iterazione eseguibile del prodotto. In generale, si utilizza Docker per eseguire il deployment di software cloud-native e questa fase della pipeline crea i container Docker necessari. Se un'app non supera questa fase, vuol dire che alcuni elementi della configurazione sono intrinsecamente sbagliati e che bisogna agire immediatamente per correggerli.\n\n### Test\n\nDurante la fase di test, il codice viene validato ed è possibile osservare il comportamento del prodotto. Si tratta di una rete di sicurezza essenziale che impedisce ai bug di arrivare agli utenti finali. È compito dello sviluppatore scrivere i test automatizzati: più ampia è la suite di test, maggiore sarà la rapidità con cui il prodotto verrà immesso sul mercato e minore la probabilità che sia necessario un nuovo deployment.\n\nEventuali errori in questa fase metteranno in luce problemi che non avevi preso in considerazione durante la scrittura del codice. Lo scopo di questa fase è fornire rapidamente un feedback agli ingegneri mentre le cause del problema sono ancora chiare nella loro mente e possano essere affrontate con la dovuta concentrazione.\n\n### Deployment\n\nUna volta creata e testata un'istanza eseguibile dell'intero codice, si può procedere al deployment. È possibile configurare la pipeline per eseguire il deployment del codice in base a un programma e scegliere se distribuire i prodotti a un gruppo selezionato di clienti o a tutti i destinatari in generale. In caso di problemi, si può persino automatizzare il processo di rollback di una release.\n\nNe consegue che puoi stabilire quali aspetti funzionano al meglio, automatizzandoli nell'ambito della tua pipeline CI/CD.\n",{"id":103},"ci-cd-pipeline-stages",{"type":84,"componentName":84,"componentContent":105},{"header":55,"text":106,"config":107},"È possibile utilizzare un'ampia serie di strumenti di pipeline CI/CD durante l'implementazione della CI/CD nel processo DevOps, tra cui:\n\n- CI/CD di GitLab\n- AutoDevOps\n- ChatOps\n- Docker\n- Kubernetes\n- OpenID Connect\n- Bitbucket Cloud\n- GitLab Runner\n- Chiavi SSH\n- Flag funzionalità\n- UAT\n",{"id":108},"ci-cd-pipeline-tools",{"type":84,"componentName":84,"componentContent":110},{"header":59,"text":111,"config":112},"Non tutte le pipeline CI e CD sono uguali. Il loro obiettivo è generare rapidamente prodotti accurati e affidabili, fornendo un feedback completo durante tutto il ciclo di sviluppo al fine di realizzare una pipeline precisa, affidabile, rapida ed efficace. Scopriamo perché:\n- **Velocità**: l'integrazione continua deve essere rapida e con un feedback immediato, onde evitare di interrompere il flusso di lavoro e di compromettere la produttività.\n- **Precisione**: il processo di automazione del deployment deve essere estremamente preciso per eliminare completamente la necessità di interventi manuali.\n- **Affidabilità**: la pipeline deve essere affidabile, il codice privo di falle e l'output stabile.\n",{"id":113},"what-makes-a-good-ci-cd-pipeline",{"type":84,"componentName":84,"componentContent":115},{"header":63,"text":116,"config":117},"Di seguito è riportato un piccolo esempio di diagramma della pipeline CI/CD:\n- **Controllo del codice sorgente:** memorizza il codice in hosting su GitLab per integrare la tua app con i principali software e servizi.\n- **CI/CD:** utilizza la CI/CD di GitLab per eseguire il commit di tutto il codice, sviluppare la build ed eseguire i test necessari.\n- **Deployment del codice sul server UAT:** configura la CI/CD di GitLab per eseguire il deployment del codice sul server UAT.\n- **Deployment nell'ambiente di produzione:** ripeti il passaggio relativo alla CI/CD per eseguire il deployment del codice nel server UAT.\n",{"id":118},"ci-cd-pipeline-example",{"type":84,"componentName":84,"componentContent":120},{"header":67,"text":121,"config":122},"Le pipeline CI/CD offrono una serie di vantaggi evidenti, tra cui:\n- Semplificano lo sviluppo e i test\n- Migliorano la qualità e la coerenza del codice\n- Ottimizzano la comunicazione\n- Automatizzano gran parte del processo di distribuzione del software\n- Stimolano un feedback più rapido\n- Aumentano la visibilità nel ciclo di sviluppo del prodotto\n- Permettono di correggere rapidamente gli errori manuali\n- Riducono i costi di manodopera\n- Velocizzano il ciclo di sviluppo\n- Accelerano il ciclo di feedback fra ingegneri e clienti\n- I test automatizzati permettono di risparmiare denaro e di ridurre al minimo i problemi per gli utenti finali\n",{"id":123},"why-should-it-leaders-use-ci-cd-pipelines",{"type":84,"componentName":84,"componentContent":125},{"header":71,"text":126,"config":127},"[Gitlab](/why-gitlab/){data-ga-name=\"why is everyone moving to gitlab\" data-ga-location=\"body\"} sta diventando uno degli strumenti DevOps più popolari e diffusi fra gli addetti ai lavori. Al momento viene utilizzato da 30 milioni di utenti, una quota in continua crescita. Ecco alcuni dei motivi della popolarità di GitLab:\n1. Quando si tratta di CI/CD, GitLab offre un vantaggio rispetto a tutti i principali repository, ovvero uno strumento integrato che non richiede praticamente alcuna configurazione.\n2. GitLab offre 400 minuti di risorse di calcolo gratuiti.\n3. Lo strumento di analisi gratuito ti permette di accelerare il deployment evitando i colli di bottiglia.\n4. GitLab è open-source e ti consente di installare la piattaforma su un server privato.\n5. Il sistema di monitoraggio dei ticket è potente, ricco di funzionalità e favorisce una comunicazione efficace.\n6. GitLab è lo strumento migliore per esportare e importare codice ed è provvisto di una [documentazione completa](https://docs.gitlab.com/ee/user/project/settings/import_export.html?_gl=1*zdn8nq*_ga*NzU4NzU3NzE3LjE2NzgyMDE2MTc.*_ga_ENFH3X7M5Y*MTY4MDExOTYyOC41Mi4xLjE2ODAxMjQ2MDguMC4wLjA.) che spiega nel dettaglio l'intero processo, permettendoti di sviluppare build all'avanguardia.\n",{"id":128},"why-is-everyone-moving-to-git-lab",{"type":84,"componentName":84,"componentContent":130},{"header":75,"text":131,"config":132},"Una pipeline di integrazione continua migliora la qualità del codice facendo in modo che tutte le modifiche al codice attraversino lo stesso processo. Le modifiche al codice vengono validate mettendole a confronto con altre modifiche di cui viene eseguito il commit nello stesso repository di codice condiviso. Test e build automatici riducono la possibilità di errori manuali, permettendo iterazioni più veloci e lo sviluppo di codice di qualità migliore.\n",{"id":133},"how-ci-cd-pipelines-support-dev-ops-teams",{"type":84,"componentName":84,"componentContent":135},{"header":79,"text":136,"config":137},"La creazione di una pipeline CI/CD completa, specialmente se si incorpora una pipeline di distribuzione continua, permette di aumentare sensibilmente l'efficienza e l'affidabilità dei progetti di sviluppo software. Automatizzando l'esecuzione dei job da ogni commit su un ramo fino al deployment, questo tipo di pipeline garantisce che ogni modifica venga accuratamente testata e integrata. Tale automazione sfrutta le potenti funzionalità degli strumenti CI/CD per ottimizzare i processi in tutto il repository del codice.\n\nQuesto non solo accelera il ciclo di sviluppo, ma aiuta anche a mantenere elevati standard di qualità del codice, facendo in modo che ogni singolo commit contribuisca in modo positivo al buon esito del progetto.\n",{"id":138},"conclusion",{"type":140,"componentName":140,"componentContent":141},"CommonResourcesContainer",{"header":142,"tabs":143},"Scopri di più sull'integrazione continua ottimizzata",[144],{"name":145,"items":146,"config":174},"resources",[147,157,166],{"header":148,"type":149,"image":150,"link":153},"Padroneggiare lo sviluppo continuo del software","Webcast",{"altText":148,"config":151},{"src":152},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749157558/Website/Topics/resources_11.jpg",{"text":154,"config":155},"Scopri di più",{"href":156,"icon":149,"modal":6},"/webcast/mastering-ci-cd/",{"header":158,"type":159,"image":160,"link":163},"Integrazione e distribuzione continue scalabili","Ebook",{"altText":158,"config":161},{"src":162},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749158268/Website/Topics/resources_5.jpg",{"text":154,"config":164},{"href":165,"icon":159,"modal":6},"/resources/scaled-ci-cd/",{"header":167,"type":159,"image":168,"link":171},"Modernizza la tua CI/CD",{"altText":167,"config":169},{"src":170},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749158268/Website/Topics/resources_2.jpg",{"text":154,"config":172},{"href":173,"icon":159,"modal":6},"/resources/ebook-fuel-growth-cicd/",{"key":145},{"type":176,"componentName":176},"CommonNextSteps","content:it-it:topics:ci-cd:cicd-pipeline:index.yml","yaml","content","it-it/topics/ci-cd/cicd-pipeline/index.yml","it-it/topics/ci-cd/cicd-pipeline/index","yml",{"_path":184,"_dir":185,"_draft":6,"_partial":6,"_locale":7,"data":186,"_id":597,"_type":178,"title":598,"_source":179,"_file":599,"_stem":600,"_extension":182},"/shared/it-it/main-navigation","it-it",{"logo":187,"freeTrial":192,"sales":197,"login":202,"items":207,"search":538,"minimal":574,"duo":588},{"config":188},{"href":189,"dataGaName":190,"dataGaLocation":191},"/it-it/","gitlab logo","header",{"text":193,"config":194},"Ottieni una prova gratuita",{"href":195,"dataGaName":196,"dataGaLocation":191},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":198,"config":199},"Contatta le vendite",{"href":200,"dataGaName":201,"dataGaLocation":191},"/it-it/sales/","sales",{"text":203,"config":204},"Accedi",{"href":205,"dataGaName":206,"dataGaLocation":191},"https://gitlab.com/users/sign_in/","sign in",[208,251,349,354,459,519],{"text":209,"config":210,"cards":212,"footer":234},"Piattaforma",{"dataNavLevelOne":211},"platform",[213,219,227],{"title":209,"description":214,"link":215},"La piattaforma DevSecOps più completa basata sull'IA",{"text":216,"config":217},"Scopri la nostra piattaforma",{"href":218,"dataGaName":211,"dataGaLocation":191},"/it-it/platform/",{"title":220,"description":221,"link":222},"GitLab Duo (IA)","Sviluppa software più velocemente con l'IA in ogni fase del ciclo di sviluppo",{"text":223,"config":224},"Ti presentiamo GitLab Duo",{"href":225,"dataGaName":226,"dataGaLocation":191},"/it-it/gitlab-duo/","gitlab duo ai",{"title":228,"description":229,"link":230},"Perché scegliere GitLab","Dieci motivi per cui le aziende scelgono GitLab",{"text":154,"config":231},{"href":232,"dataGaName":233,"dataGaLocation":191},"/it-it/why-gitlab/","why gitlab",{"title":235,"items":236},"Primi passi con",[237,242,247],{"text":238,"config":239},"Platform engineering",{"href":240,"dataGaName":241,"dataGaLocation":191},"/it-it/solutions/platform-engineering/","platform engineering",{"text":243,"config":244},"Esperienza d'uso degli sviluppatori",{"href":245,"dataGaName":246,"dataGaLocation":191},"/it-it/developer-experience/","Developer experience",{"text":248,"config":249},"MLOps",{"href":250,"dataGaName":248,"dataGaLocation":191},"/it-it/topics/devops/the-role-of-ai-in-devops/",{"text":252,"left":253,"config":254,"link":256,"lists":260,"footer":331},"Prodotti",true,{"dataNavLevelOne":255},"solutions",{"text":257,"config":258},"Visualizza tutte le soluzioni",{"href":259,"dataGaName":255,"dataGaLocation":191},"/it-it/solutions/",[261,286,309],{"title":262,"description":263,"link":264,"items":269},"Automazione","CI/CD e automazione per accelerare il deployment",{"config":265},{"icon":266,"href":267,"dataGaName":268,"dataGaLocation":191},"AutomatedCodeAlt","/it-it/solutions/delivery-automation/","automated software delivery",[270,273,277,282],{"text":21,"config":271},{"href":272,"dataGaLocation":191,"dataGaName":21},"/it-it/solutions/continuous-integration/",{"text":274,"config":275},"Sviluppo assistito dall'IA",{"href":225,"dataGaLocation":191,"dataGaName":276},"AI assisted development",{"text":278,"config":279},"Gestione del codice sorgente",{"href":280,"dataGaLocation":191,"dataGaName":281},"/it-it/solutions/source-code-management/","Source Code Management",{"text":283,"config":284},"Distribuzione software automatizzata",{"href":267,"dataGaLocation":191,"dataGaName":285},"Automated software delivery",{"title":287,"description":288,"link":289,"items":294},"Sicurezza","Distribuisci il codice più velocemente senza compromettere la sicurezza",{"config":290},{"href":291,"dataGaName":292,"dataGaLocation":191,"icon":293},"/it-it/solutions/security-compliance/","security and compliance","ShieldCheckLight",[295,299,304],{"text":296,"config":297},"Sicurezza e conformità",{"href":291,"dataGaLocation":191,"dataGaName":298},"Security & Compliance",{"text":300,"config":301},"Sicurezza della catena di fornitura del software",{"href":302,"dataGaLocation":191,"dataGaName":303},"/it-it/solutions/supply-chain/","Software supply chain security",{"text":305,"config":306},"Conformità e governance",{"href":307,"dataGaLocation":191,"dataGaName":308},"/it-it/solutions/continuous-software-compliance/","Compliance and governance",{"title":310,"link":311,"items":316},"Misurazione",{"config":312},{"icon":313,"href":314,"dataGaName":315,"dataGaLocation":191},"DigitalTransformation","/it-it/solutions/visibility-measurement/","visibility and measurement",[317,321,326],{"text":318,"config":319},"Visibilità e misurazione",{"href":314,"dataGaLocation":191,"dataGaName":320},"Visibility and Measurement",{"text":322,"config":323},"Gestione del flusso di valore",{"href":324,"dataGaLocation":191,"dataGaName":325},"/it-it/solutions/value-stream-management/","Value Stream Management",{"text":327,"config":328},"Analisi e approfondimenti",{"href":329,"dataGaLocation":191,"dataGaName":330},"/it-it/solutions/analytics-and-insights/","Analytics and insights",{"title":332,"items":333},"GitLab per",[334,339,344],{"text":335,"config":336},"Aziende",{"href":337,"dataGaLocation":191,"dataGaName":338},"/it-it/enterprise/","enterprise",{"text":340,"config":341},"Piccole imprese",{"href":342,"dataGaLocation":191,"dataGaName":343},"/it-it/small-business/","small business",{"text":345,"config":346},"Pubblica amministrazione",{"href":347,"dataGaLocation":191,"dataGaName":348},"/it-it/solutions/public-sector/","public sector",{"text":350,"config":351},"Prezzi",{"href":352,"dataGaName":353,"dataGaLocation":191,"dataNavLevelOne":353},"/it-it/pricing/","pricing",{"text":355,"config":356,"link":357,"lists":361,"feature":446},"Risorse",{"dataNavLevelOne":145},{"text":358,"config":359},"Visualizza tutte le risorse",{"href":360,"dataGaName":145,"dataGaLocation":191},"/it-it/resources/",[362,395,418],{"title":363,"items":364},"Per iniziare",[365,370,375,380,385,390],{"text":366,"config":367},"Installazione",{"href":368,"dataGaName":369,"dataGaLocation":191},"/it-it/install/","install",{"text":371,"config":372},"Guide rapide",{"href":373,"dataGaName":374,"dataGaLocation":191},"/it-it/get-started/","quick setup checklists",{"text":376,"config":377},"Formazione",{"href":378,"dataGaLocation":191,"dataGaName":379},"https://university.gitlab.com/","learn",{"text":381,"config":382},"Documentazione di prodotto",{"href":383,"dataGaName":384,"dataGaLocation":191},"https://docs.gitlab.com/","product documentation",{"text":386,"config":387},"Video sulle best practice",{"href":388,"dataGaName":389,"dataGaLocation":191},"/it-it/getting-started-videos/","best practice videos",{"text":391,"config":392},"Integrazioni",{"href":393,"dataGaName":394,"dataGaLocation":191},"/it-it/integrations/","integrations",{"title":396,"items":397},"Scopri",[398,403,408,413],{"text":399,"config":400},"Storie di successo dei clienti",{"href":401,"dataGaName":402,"dataGaLocation":191},"/it-it/customers/","customer success stories",{"text":404,"config":405},"Blog",{"href":406,"dataGaName":407,"dataGaLocation":191},"/blog/","blog",{"text":409,"config":410},"Lavorare da remoto",{"href":411,"dataGaName":412,"dataGaLocation":191},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":414,"config":415},"TeamOps",{"href":416,"dataGaName":417,"dataGaLocation":191},"/it-it/teamops/","teamops",{"title":419,"items":420},"Connetti",[421,426,431,436,441],{"text":422,"config":423},"Servizi GitLab",{"href":424,"dataGaName":425,"dataGaLocation":191},"/it-it/services/","services",{"text":427,"config":428},"Community",{"href":429,"dataGaName":430,"dataGaLocation":191},"/community/","community",{"text":432,"config":433},"Forum",{"href":434,"dataGaName":435,"dataGaLocation":191},"https://forum.gitlab.com/","forum",{"text":437,"config":438},"Eventi",{"href":439,"dataGaName":440,"dataGaLocation":191},"/events/","events",{"text":442,"config":443},"Partner",{"href":444,"dataGaName":445,"dataGaLocation":191},"/it-it/partners/","partners",{"backgroundColor":447,"textColor":448,"text":449,"image":450,"link":454},"#2f2a6b","#fff","Approfondimenti e informazioni per il futuro dello sviluppo software",{"altText":451,"config":452},"scheda promozionale per The Source",{"src":453},"/images/navigation/the-source-promo-card.svg",{"text":455,"config":456},"Leggi le ultime notizie",{"href":457,"dataGaName":458,"dataGaLocation":191},"/it-it/the-source/","the source",{"text":460,"config":461,"lists":463},"Azienda",{"dataNavLevelOne":462},"company",[464],{"items":465},[466,471,477,479,484,489,494,499,504,509,514],{"text":467,"config":468},"Informazioni",{"href":469,"dataGaName":470,"dataGaLocation":191},"/it-it/company/","about",{"text":472,"config":473,"footerGa":476},"Opportunità di lavoro",{"href":474,"dataGaName":475,"dataGaLocation":191},"/jobs/","jobs",{"dataGaName":475},{"text":437,"config":478},{"href":439,"dataGaName":440,"dataGaLocation":191},{"text":480,"config":481},"Leadership",{"href":482,"dataGaName":483,"dataGaLocation":191},"/company/team/e-group/","leadership",{"text":485,"config":486},"Team",{"href":487,"dataGaName":488,"dataGaLocation":191},"/company/team/","team",{"text":490,"config":491},"Manuale",{"href":492,"dataGaName":493,"dataGaLocation":191},"https://handbook.gitlab.com/","handbook",{"text":495,"config":496},"Rapporti con gli investitori",{"href":497,"dataGaName":498,"dataGaLocation":191},"https://ir.gitlab.com/","investor relations",{"text":500,"config":501},"Trust Center",{"href":502,"dataGaName":503,"dataGaLocation":191},"/it-it/security/","trust center",{"text":505,"config":506},"AI Transparency Center",{"href":507,"dataGaName":508,"dataGaLocation":191},"/it-it/ai-transparency-center/","ai transparency center",{"text":510,"config":511},"Newsletter",{"href":512,"dataGaName":513,"dataGaLocation":191},"/company/contact/","newsletter",{"text":515,"config":516},"Rassegna stampa",{"href":517,"dataGaName":518,"dataGaLocation":191},"/press/","press",{"text":520,"config":521,"lists":522},"Contattaci",{"dataNavLevelOne":462},[523],{"items":524},[525,528,533],{"text":198,"config":526},{"href":200,"dataGaName":527,"dataGaLocation":191},"talk to sales",{"text":529,"config":530},"Richiedi assistenza",{"href":531,"dataGaName":532,"dataGaLocation":191},"/support/","get help",{"text":534,"config":535},"Portale clienti",{"href":536,"dataGaName":537,"dataGaLocation":191},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":539,"login":540,"suggestions":547},"Chiudi",{"text":541,"link":542},"Per cercare repository e progetti, accedi a",{"text":543,"config":544},"gitlab.com",{"href":205,"dataGaName":545,"dataGaLocation":546},"search login","search",{"text":548,"default":549},"Suggerimenti",[550,553,558,560,565,570],{"text":220,"config":551},{"href":225,"dataGaName":552,"dataGaLocation":546},"GitLab Duo (AI)",{"text":554,"config":555},"Suggerimenti di codice (IA)",{"href":556,"dataGaName":557,"dataGaLocation":546},"/it-it/solutions/code-suggestions/","Code Suggestions (AI)",{"text":21,"config":559},{"href":272,"dataGaName":21,"dataGaLocation":546},{"text":561,"config":562},"GitLab su AWS",{"href":563,"dataGaName":564,"dataGaLocation":546},"/it-it/partners/technology-partners/aws/","GitLab on AWS",{"text":566,"config":567},"GitLab su Google Cloud",{"href":568,"dataGaName":569,"dataGaLocation":546},"/it-it/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":571,"config":572},"Perché scegliere GitLab?",{"href":232,"dataGaName":573,"dataGaLocation":546},"Why GitLab?",{"freeTrial":575,"mobileIcon":580,"desktopIcon":585},{"text":576,"config":577},"Inizia la prova gratuita",{"href":578,"dataGaName":196,"dataGaLocation":579},"https://gitlab.com/-/trials/new/","nav",{"altText":581,"config":582},"Icona di GitLab",{"src":583,"dataGaName":584,"dataGaLocation":579},"/images/brand/gitlab-logo-tanuki.svg","gitlab icon",{"altText":581,"config":586},{"src":587,"dataGaName":584,"dataGaLocation":579},"/images/brand/gitlab-logo-type.svg",{"freeTrial":589,"mobileIcon":593,"desktopIcon":595},{"text":590,"config":591},"Scopri di più su GitLab Duo",{"href":225,"dataGaName":592,"dataGaLocation":579},"gitlab duo",{"altText":581,"config":594},{"src":583,"dataGaName":584,"dataGaLocation":579},{"altText":581,"config":596},{"src":587,"dataGaName":584,"dataGaLocation":579},"content:shared:it-it:main-navigation.yml","Main Navigation","shared/it-it/main-navigation.yml","shared/it-it/main-navigation",{"_path":602,"_dir":185,"_draft":6,"_partial":6,"_locale":7,"title":603,"button":604,"config":608,"_id":610,"_type":178,"_source":179,"_file":611,"_stem":612,"_extension":182},"/shared/it-it/banner","La GitLab Duo Agent Platform è ora in beta pubblica!",{"text":154,"config":605},{"href":606,"dataGaName":607,"dataGaLocation":191},"/it-it/gitlab-duo/agent-platform/","duo banner",{"layout":609},"release","content:shared:it-it:banner.yml","shared/it-it/banner.yml","shared/it-it/banner",{"_path":614,"_dir":185,"_draft":6,"_partial":6,"_locale":7,"data":615,"_id":817,"_type":178,"title":818,"_source":179,"_file":819,"_stem":820,"_extension":182},"/shared/it-it/main-footer",{"text":616,"source":617,"edit":623,"contribute":628,"config":633,"items":638,"minimal":809},"Git è un marchio di Software Freedom Conservancy e l'uso del termine \"GitLab\" è regolato da un accordo di licenza",{"text":618,"config":619},"Visualizza origine pagina",{"href":620,"dataGaName":621,"dataGaLocation":622},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":624,"config":625},"Modifica questa pagina",{"href":626,"dataGaName":627,"dataGaLocation":622},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":629,"config":630},"Contribuisci",{"href":631,"dataGaName":632,"dataGaLocation":622},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":634,"facebook":635,"youtube":636,"linkedin":637},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[639,662,716,746,780],{"title":209,"links":640,"subMenu":645},[641],{"text":642,"config":643},"Piattaforma DevSecOps",{"href":218,"dataGaName":644,"dataGaLocation":622},"devsecops platform",[646],{"title":350,"links":647},[648,652,657],{"text":649,"config":650},"Visualizza i piani",{"href":352,"dataGaName":651,"dataGaLocation":622},"view plans",{"text":653,"config":654},"Perché passare a Premium?",{"href":655,"dataGaName":656,"dataGaLocation":622},"/it-it/pricing/premium/","why premium",{"text":658,"config":659},"Perché passare a Ultimate?",{"href":660,"dataGaName":661,"dataGaLocation":622},"/it-it/pricing/ultimate/","why ultimate",{"title":663,"links":664},"Soluzioni",[665,670,673,675,680,685,689,692,695,700,702,704,706,711],{"text":666,"config":667},"Trasformazione digitale",{"href":668,"dataGaName":669,"dataGaLocation":622},"/it-it/topics/digital-transformation/","digital transformation",{"text":296,"config":671},{"href":291,"dataGaName":672,"dataGaLocation":622},"security & compliance",{"text":283,"config":674},{"href":267,"dataGaName":268,"dataGaLocation":622},{"text":676,"config":677},"Sviluppo Agile",{"href":678,"dataGaName":679,"dataGaLocation":622},"/it-it/solutions/agile-delivery/","agile delivery",{"text":681,"config":682},"Trasformazione cloud",{"href":683,"dataGaName":684,"dataGaLocation":622},"/it-it/topics/cloud-native/","cloud transformation",{"text":686,"config":687},"SCM",{"href":280,"dataGaName":688,"dataGaLocation":622},"source code management",{"text":21,"config":690},{"href":272,"dataGaName":691,"dataGaLocation":622},"continuous integration & delivery",{"text":322,"config":693},{"href":324,"dataGaName":694,"dataGaLocation":622},"value stream management",{"text":696,"config":697},"GitOps",{"href":698,"dataGaName":699,"dataGaLocation":622},"/it-it/solutions/gitops/","gitops",{"text":335,"config":701},{"href":337,"dataGaName":338,"dataGaLocation":622},{"text":340,"config":703},{"href":342,"dataGaName":343,"dataGaLocation":622},{"text":345,"config":705},{"href":347,"dataGaName":348,"dataGaLocation":622},{"text":707,"config":708},"Istruzione",{"href":709,"dataGaName":710,"dataGaLocation":622},"/it-it/solutions/education/","education",{"text":712,"config":713},"Servizi finanziari",{"href":714,"dataGaName":715,"dataGaLocation":622},"/it-it/solutions/finance/","financial services",{"title":355,"links":717},[718,720,722,724,727,729,732,734,736,738,740,742,744],{"text":366,"config":719},{"href":368,"dataGaName":369,"dataGaLocation":622},{"text":371,"config":721},{"href":373,"dataGaName":374,"dataGaLocation":622},{"text":376,"config":723},{"href":378,"dataGaName":379,"dataGaLocation":622},{"text":381,"config":725},{"href":383,"dataGaName":726,"dataGaLocation":622},"docs",{"text":404,"config":728},{"href":406,"dataGaName":407,"dataGaLocation":622},{"text":399,"config":730},{"href":731,"dataGaName":402,"dataGaLocation":622},"/customers/",{"text":409,"config":733},{"href":411,"dataGaName":412,"dataGaLocation":622},{"text":422,"config":735},{"href":424,"dataGaName":425,"dataGaLocation":622},{"text":414,"config":737},{"href":416,"dataGaName":417,"dataGaLocation":622},{"text":427,"config":739},{"href":429,"dataGaName":430,"dataGaLocation":622},{"text":432,"config":741},{"href":434,"dataGaName":435,"dataGaLocation":622},{"text":437,"config":743},{"href":439,"dataGaName":440,"dataGaLocation":622},{"text":442,"config":745},{"href":444,"dataGaName":445,"dataGaLocation":622},{"title":460,"links":747},[748,750,752,754,756,758,760,764,769,771,773,775],{"text":467,"config":749},{"href":469,"dataGaName":462,"dataGaLocation":622},{"text":472,"config":751},{"href":474,"dataGaName":475,"dataGaLocation":622},{"text":480,"config":753},{"href":482,"dataGaName":483,"dataGaLocation":622},{"text":485,"config":755},{"href":487,"dataGaName":488,"dataGaLocation":622},{"text":490,"config":757},{"href":492,"dataGaName":493,"dataGaLocation":622},{"text":495,"config":759},{"href":497,"dataGaName":498,"dataGaLocation":622},{"text":761,"config":762},"Sustainability",{"href":763,"dataGaName":761,"dataGaLocation":622},"/sustainability/",{"text":765,"config":766},"Diversità, inclusione e appartenenza (DIB)",{"href":767,"dataGaName":768,"dataGaLocation":622},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":500,"config":770},{"href":502,"dataGaName":503,"dataGaLocation":622},{"text":510,"config":772},{"href":512,"dataGaName":513,"dataGaLocation":622},{"text":515,"config":774},{"href":517,"dataGaName":518,"dataGaLocation":622},{"text":776,"config":777},"Dichiarazione di trasparenza sulla schiavitù moderna",{"href":778,"dataGaName":779,"dataGaLocation":622},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":520,"links":781},[782,785,787,789,794,799,804],{"text":783,"config":784},"Contatta un esperto",{"href":200,"dataGaName":201,"dataGaLocation":622},{"text":529,"config":786},{"href":531,"dataGaName":532,"dataGaLocation":622},{"text":534,"config":788},{"href":536,"dataGaName":537,"dataGaLocation":622},{"text":790,"config":791},"Stato",{"href":792,"dataGaName":793,"dataGaLocation":622},"https://status.gitlab.com/","status",{"text":795,"config":796},"Termini di utilizzo",{"href":797,"dataGaName":798,"dataGaLocation":622},"/terms/","terms of use",{"text":800,"config":801},"Informativa sulla privacy",{"href":802,"dataGaName":803,"dataGaLocation":622},"/it-it/privacy/","privacy statement",{"text":805,"config":806},"Preferenze dei cookie",{"dataGaName":807,"dataGaLocation":622,"id":808,"isOneTrustButton":253},"cookie preferences","ot-sdk-btn",{"items":810},[811,813,815],{"text":795,"config":812},{"href":797,"dataGaName":798,"dataGaLocation":622},{"text":800,"config":814},{"href":802,"dataGaName":803,"dataGaLocation":622},{"text":805,"config":816},{"dataGaName":807,"dataGaLocation":622,"id":808,"isOneTrustButton":253},"content:shared:it-it:main-footer.yml","Main Footer","shared/it-it/main-footer.yml","shared/it-it/main-footer",{"_path":822,"_dir":185,"_draft":6,"_partial":6,"_locale":7,"header":823,"eyebrow":824,"blurb":825,"button":826,"secondaryButton":830,"_id":832,"_type":178,"title":833,"_source":179,"_file":834,"_stem":835,"_extension":182},"/shared/it-it/next-steps","Inizia a distribuire software migliori più velocemente","Oltre il 50% delle società Fortune 100 si affida a GitLab","Scopri cosa può fare il tuo team grazie a una\n\n\npiattaforma DevSecOps intelligente.\n",{"text":193,"config":827},{"href":828,"dataGaName":196,"dataGaLocation":829},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":198,"config":831},{"href":200,"dataGaName":201,"dataGaLocation":829},"content:shared:it-it:next-steps.yml","Next Steps","shared/it-it/next-steps.yml","shared/it-it/next-steps",1753475475600]