[{"data":1,"prerenderedAt":865},["ShallowReactive",2],{"/it-it/topics/source-code-management":3,"navigation-it-it":160,"banner-it-it":595,"footer-it-it":602,"next-steps-it-it":855},{"id":4,"title":5,"body":6,"category":6,"config":6,"content":7,"description":6,"extension":150,"meta":151,"navigation":152,"path":153,"seo":154,"slug":6,"stem":158,"testContent":6,"type":6,"__hash__":159},"pages/it-it/topics/source-code-management/index.yml","",null,[8,18,25,123,148],{"type":9,"componentName":9,"componentContent":10},"CommonBreadcrumbs",{"crumbs":11},[12,16],{"title":13,"config":14},"Argomenti",{"href":15},"/it-it/topics/",{"title":17},"Gestione del codice sorgente",{"type":19,"componentName":19,"componentContent":20},"CommonArticleHero",{"title":21,"text":22,"config":23},"Descrizione della gestione del codice sorgente","La gestione del codice sorgente è la pratica di monitorare, revisionare e gestire le modifiche al codice sorgente e ai file di progetto correlati. La gestione del codice sorgente fornisce ai team di sviluppo una cronologia affidabile di cosa è cambiato, chi ha apportato le modifiche e come queste passano dallo sviluppo a una codebase condivisa e, infine, alla produzione.",{"id":24},"source-code-management",{"type":26,"componentName":26,"componentContent":27},"CommonSideNavigationWithTree",{"anchors":28,"components":71},{"text":29,"data":30},"In questa pagina",[31,35,39,43,47,51,55,59,63,67],{"config":32,"text":34},{"href":33},"#what-is-source-code-management","Che cos'è la gestione del codice sorgente?",{"config":36,"text":38},{"href":37},"#how-does-source-code-management-work","Come funziona la gestione del codice sorgente?",{"config":40,"text":42},{"href":41},"#why-is-source-code-management-important","Perché la gestione del codice sorgente è importante?",{"config":44,"text":46},{"href":45},"#scm-version-control-source-control","Qual è la differenza tra gestione del codice sorgente, controllo della versione e controllo del codice sorgente?",{"config":48,"text":50},{"href":49},"#what-are-the-main-types-of-version-control-systems","Quali sono i principali tipi di sistemi di controllo della versione?",{"config":52,"text":54},{"href":53},"#what-should-you-look-for-in-an-scm-platform","Cosa dovresti cercare in una piattaforma con funzionalità di gestione del codice sorgente?",{"config":56,"text":58},{"href":57},"#how-does-scm-support-devops-and-cicd","In che modo la gestione del codice sorgente supporta DevOps e CI/CD?",{"config":60,"text":62},{"href":61},"#how-do-you-implement-scm-with-gitlab","Come si implementa la gestione del codice sorgente con GitLab?",{"config":64,"text":66},{"href":65},"#what-are-scm-best-practices","Quali sono le best practice per la gestione del codice sorgente?",{"config":68,"text":70},{"href":69},"#take-the-next-step-with-gitlab","Fai il passo successivo con GitLab",[72,78,83,88,93,98,103,108,113,118],{"type":73,"componentName":73,"componentContent":74},"TopicsCopy",{"header":34,"text":75,"config":76},"La gestione del codice sorgente aiuta gli sviluppatori a lavorare in parallelo senza perdere il lavoro degli altri collaboratori. I team possono creare rami, registrare modifiche nei commit, revisionare gli aggiornamenti proposti, risolvere conflitti e tornare a una versione precedente quando necessario. Nello sviluppo software moderno, la gestione del codice sorgente è strettamente connessa al controllo della versione, alla revisione del codice, alla sicurezza e alla [CI/CD](https://about.gitlab.com/topics/ci-cd/).\n\nLa gestione del codice sorgente utilizza un repository e un sistema di controllo versione per organizzare le modifiche a un progetto. Il repository archivia il codice sorgente e può contenere anche configurazioni, script di build, test, documentazione e altri file necessari per sviluppare e distribuire il software.\n\nLa gestione del codice sorgente è spesso usata in modo intercambiabile con il controllo del codice sorgente e il controllo della versione. In pratica, il [controllo della versione](https://about.gitlab.com/topics/version-control/) descrive il sistema che registra le revisioni, mentre la gestione del codice sorgente può anche riferirsi ai flussi di lavoro di collaborazione e distribuzione più ampi sviluppati attorno a tali revisioni.\n\nUn repository ben gestito diventa una fonte di riferimento condivisa per il progetto. Gli sviluppatori possono ispezionare lo stato attuale del codice, confrontare le revisioni, comprendere il contesto dietro una modifica e collaborare senza fare affidamento su file scambiati manualmente o passaggi di consegne non documentati.",{"id":77},"what-is-source-code-management",{"type":73,"componentName":73,"componentContent":79},{"header":38,"config":80,"text":82},{"id":81},"how-does-source-code-management-work","Un flusso di lavoro Gestione del codice sorgente collega le singole modifiche a un risultato revisionato e tracciabile. I comandi esatti e il modello di ramificazione variano a seconda del team, ma il processo principale solitamente include questi passaggi:\n\n### 1. Creazione o clonazione di un repository\n\nUn team crea un repository per un progetto o clona un repository esistente in un ambiente di sviluppo locale. Ogni sviluppatore può lavorare con i file e la cronologia necessari per la propria attività mantenendo una connessione al progetto condiviso.\n\n### 2. Creazione di un ramo per una modifica\n\nUn ramo funge da linea di sviluppo separata. Gli sviluppatori possono lavorare su una funzionalità, una correzione o un esperimento senza modificare il ramo predefinito condiviso prima che il lavoro sia pronto. I rami di breve durata possono rendere le modifiche più facili da revisionare e quindi ridurre il rischio che lavori non correlati si intreccino.\n\n### 3. Registrazione dell'avanzamento nei commit\n\nUn commit registra un insieme di modifiche correlate in uno specifico momento. I commit mirati rendono più facile per i collaboratori del team comprendere la modifica, revisionarla, identificare il motivo di una regressione o riportare il progetto a uno stato precedente.\n\nUn messaggio di commit utile descrive cosa è cambiato e perché. Quel contesto aiuta i futuri collaboratori a comprendere la cronologia del progetto senza ricostruire la decisione da zero.\n\n### 4. Condivisione e revisione della modifica\n\nGli sviluppatori inviano il loro ramo al repository condiviso e aprono una richiesta di merge. Una richiesta di merge offre ai revisori uno spazio in cui esaminare le modifiche proposte, discutere i dettagli dell'implementazione, controllare i risultati automatizzati e confermare che l'aggiornamento soddisfi gli standard del team.\n\nIn GitLab, le richieste di merge possono essere combinate con regole di approvazione, rami protetti e pipeline automatizzate per creare un percorso controllato verso il ramo predefinito. [*Scopri di più sulla gestione del codice sorgente di GitLab*](https://about.gitlab.com/solutions/source-code-management/).\n\n### 5. Risoluzione dei conflitti ed esecuzione del merge\n\nQuando due rami modificano parti sovrapposte di un progetto, il sistema di gestione del codice sorgente può identificare un conflitto. I collaboratori interessati possono esaminare le modifiche in conflitto, decidere quale risultato sia corretto e aggiornare il ramo prima di eseguire il merge.\n\nUna volta che la modifica è stata approvata e i controlli richiesti sono stati superati, può essere integrata nel ramo condiviso tramite merge. La cronologia risultante fornisce una registrazione della modifica e del relativo contesto di revisione.\n\n### 6. Convalida, rilascio e ripristino\n\nLa gestione del codice sorgente può collegare una modifica a build, test, controlli di sicurezza e flussi di lavoro di deployment automatizzati. Se un aggiornamento causa un problema imprevisto, il team può utilizzare la cronologia del progetto per confrontare le revisioni, annullare una modifica o ripristinare uno stato noto come funzionante.",{"type":73,"componentName":73,"componentContent":84},{"header":42,"config":85,"text":87},{"id":86},"why-is-source-code-management-important","La gestione del codice sorgente riduce il rischio operativo dello sviluppo software collaborativo e offre ai team un modo ripetibile per gestire le modifiche.\n\n### Collabora senza sovrascrivere il lavoro\n\nPiù sviluppatori possono lavorare su rami separati e unire le proprie modifiche grazie ai processi di revisione e merge. Questo approccio è più sicuro e trasparente rispetto allo scambio manuale di file o alla dipendenza da un coordinamento informale.\n\n### Comprendi cosa è cambiato e perché\n\nLa cronologia di un repository registra le modifiche nel tempo. I team possono utilizzare commit, rami, richieste di merge e le relative discussioni per comprendere come si è evoluta una funzionalità e dove potrebbe essere stato introdotto un bug.\n\n### Migliora la qualità con la revisione e l'automazione\n\nLa gestione del codice sorgente rende visibili le modifiche al codice prima che raggiungano il ramo condiviso. Abbinare la revisione ai test automatizzati e ad altri controlli aiuta i team a individuare i problemi in anticipo e ad applicare standard coerenti.\n\n### Ripristina gli errori\n\nPoiché le revisioni vengono conservate, i team possono confrontare lo stato attuale con le versioni precedenti e annullare le modifiche quando necessario. Ciò crea una rete di sicurezza per la sperimentazione e il ripristino dagli incidenti.\n\n### Stabilisci governance e responsabilità\n\nLa gestione del codice sorgente può fornire controlli su chi può modificare i rami protetti, chi deve approvare gli aggiornamenti e quali controlli devono essere superati prima che venga eseguito il merge di una modifica. La cronologia dell'audit può anche aiutare i team a comprendere le azioni importanti in un progetto.",{"type":73,"componentName":73,"componentContent":89},{"header":46,"config":90,"text":92},{"id":91},"scm-version-control-source-control","Questi termini si sovrappongono, ma possono enfatizzare diverse parti del flusso di lavoro di sviluppo.\n\n| **Termine** | **Significato** |\n| :---- | :---- |\n| **Controllo della versione** | Un sistema per registrare, confrontare e ripristinare le revisioni dei file nel tempo. |\n| **Controllo del codice sorgente** | Un altro termine comune per il controllo della versione, specialmente quando ci si riferisce al codice sorgente. |\n| **Gestione del codice sorgente** | La pratica di utilizzare il controllo della versione insieme a collaborazione, revisione, governance e flussi di lavoro correlati per gestire le modifiche al codice sorgente. |\n| **Repository** | La posizione del progetto in cui vengono archiviati i file sorgente e la loro cronologia delle revisioni. |",{"type":73,"componentName":73,"componentContent":94},{"header":50,"config":95,"text":97},{"id":96},"what-are-the-main-types-of-version-control-systems","I sistemi di controllo della versione sono comunemente descritti come centralizzati o distribuiti.\n\n### Controllo della versione centralizzato\n\nUn sistema centralizzato mantiene la cronologia principale del progetto in un unico repository centrale. Gli sviluppatori solitamente si connettono a quel sistema per ottenere i file e inviare le modifiche. Questo modello può essere semplice da comprendere e amministrare, ma il lavoro potrebbe dipendere maggiormente dall'accesso alla rete e dal servizio centrale.\n\n### Controllo della versione distribuito\n\nUn sistema distribuito fornisce agli sviluppatori una copia locale del repository e della sua cronologia. Gli sviluppatori possono creare rami, ispezionare la cronologia ed effettuare molte modifiche localmente prima di condividerle con il repository remoto. Git è un sistema di controllo della versione distribuito ed è ampiamente utilizzato per lo sviluppo collaborativo di software.\n\n### Scelta di un modello\n\nIl modello giusto dipende dal flusso di lavoro del team, dalle dimensioni del repository, dalla connettività, dai requisiti di governance e dai vincoli operativi. Per molti team moderni, la decisione importante non riguarda solo come vengono archiviate le revisioni, ma anche come l'accesso al repository, la revisione del codice, l'automazione, la sicurezza e la conformità lavorano insieme a tali revisioni.\n\n> In che modo l'IA sta cambiando la gestione del codice sorgente? Scopri la [gestione del codice sorgente di nuova generazione](/topics/source-code-management/next-gen-source-code-management/) progettata per i team software che lavorano sia con persone sia con agenti IA.",{"type":73,"componentName":73,"componentContent":99},{"header":54,"config":100,"text":102},{"id":101},"what-should-you-look-for-in-an-scm-platform","Quando valuti una piattaforma di gestione del codice sorgente, considera l'intero flusso di lavoro piuttosto che la sola archiviazione del repository.\n\n### Funzionalità di repository e ramificazione\n\nCerca un supporto Git affidabile, una chiara organizzazione del repository, flussi di lavoro di ramificazione pratici e strumenti che aiutino i team a lavorare con la versione corrente di un progetto.\n\n### Revisione del codice e approvazioni\n\nLa revisione dovrebbe far parte del flusso di lavoro delle modifiche. Considera richieste di merge o richieste di pull, discussioni nella riga di codice, approvazioni richieste, assegnazione dei revisori e visibilità sui feedback non risolti.\n\n### Controllo dell'accesso e governance\n\nI team potrebbero aver bisogno di autorizzazioni granulari, rami protetti, criteri di approvazione, eventi di audit e controlli di conformità. Queste funzionalità aiutano le organizzazioni ad applicare regole coerenti senza fare affidamento interamente sull'applicazione manuale.\n\n### CI/CD integrata e controlli automatizzati\n\nLe modifiche al codice sorgente dovrebbero essere facili da convalidare con build, test, analisi di sicurezza e flussi di lavoro di deployment automatizzati. Un workflow connesso riduce il rischio che la revisione del codice e il rilascio operino come processi disconnessi.\n\n### Sicurezza e protezione dei segreti\n\nValuta come la piattaforma aiuta a proteggere il codice sorgente e i dati sensibili. Le funzionalità rilevanti possono includere la gestione delle autorizzazioni, il rilevamento dei segreti, il test delle vulnerabilità e i controlli su chi può eseguire push o merge delle modifiche.\n\n### DevEx e integrazioni\n\nConsidera con quanta facilità gli sviluppatori possono clonare, modificare, revisionare e contribuire. Gli strumenti di sviluppo basati sul web, le integrazioni, il mirroring del repository e il supporto per i workflow esistenti possono ridurre l'attrito nell'adozione.\n\n### Scalabilità e flessibilità del deployment\n\nLe organizzazioni di grandi dimensioni o distribuite dovrebbero valutare le prestazioni del repository, l'amministrazione, la disponibilità, i requisiti dei dati e le opzioni di deployment. GitLab supporta modelli di deployment cloud-hosted, self-managed e single-tenant per le diverse esigenze organizzative. [*Scopri la piattaforma GitLab*](https://about.gitlab.com/platform/).",{"type":73,"componentName":73,"componentContent":104},{"header":58,"config":105,"text":107},{"id":106},"how-does-scm-support-devops-and-cicd","La gestione del codice sorgente fornisce la cronologia delle modifiche e il livello di collaborazione da cui dipende la distribuzione software automatizzata. Un commit o una richiesta di merge può attivare una pipeline che compila l'applicazione, esegue test, effettua controlli di sicurezza, crea pacchetti degli artefatti ed esegue il deployment in un ambiente.\n\nQuesta connessione offre ai team un percorso tracciabile da una modifica del codice al suo esito di convalida e rilascio. Aiuta inoltre i team a vedere se una modifica ha superato i controlli richiesti prima che raggiunga un ramo protetto o un ambiente di produzione.\n\nGitLab include la gestione del codice sorgente e [CI/CD](https://about.gitlab.com/topics/ci-cd/) nella stessa applicazione. La sua guida pubblica alla CI/CD descrive il repository come il luogo per il codice sorgente, la configurazione, le librerie, i test e gli script di compilazione, mentre la sua guida all'implementazione collega repository Git, ramificazione, approvazioni di merge, rami protetti e CI/CD integrata.",{"type":73,"componentName":73,"componentContent":109},{"header":62,"config":110,"text":112},{"id":111},"how-do-you-implement-scm-with-gitlab","Un'implementazione pratica può iniziare da un ambito ristretto e maturare nel tempo.\n\n### 1. Crea o migra un repository Git\n\nScegli la struttura del progetto, il ramo predefinito, il modello di proprietà e le impostazioni del repository. Se il codice rimane in un altro provider Git durante una transizione, definisci come i repository e i flussi di lavoro di distribuzione rimarranno sincronizzati.\n\n### 2. Scegli una strategia di ramificazione e merge\n\nSeleziona un flusso di lavoro adatto alla frequenza di rilascio e al profilo di rischio del team. Definisci quando vengono creati i rami, quanto tempo dovrebbero durare e come le modifiche tornano al ramo predefinito.\n\n### 3. Stabilisci regole di revisione e protezione\n\nUsa le richieste di merge per le modifiche collaborative. Definisci i revisori richiesti, le regole di approvazione, i rami protetti, le responsabilità di proprietà e le condizioni che devono essere soddisfatte prima del merge.\n\n### 4. Automatizza la convalida con CI/CD\n\nAggiungi pipeline che compilino e testino le modifiche in modo coerente. Espandi la pipeline nel tempo con controlli di sicurezza, creazione di pacchetti, convalida dell'ambiente e passaggi di deployment che soddisfino le esigenze del progetto.\n\n### 5. Applica controlli di sicurezza e conformità\n\nProteggi le credenziali e le impostazioni sensibili, limita le azioni ad alto impatto e documenta i criteri applicabili ai repository e ai flussi di lavoro di distribuzione. I controlli corretti dipendono dall'organizzazione, dal progetto e dall'ambiente normativo.\n\n### 6. Misura e migliora il flusso di lavoro\n\nEsamina segnali come il tempo di revisione, il tempo dall'approvazione al merge, le modifiche non riuscite, la frequenza di rollback e le prestazioni di distribuzione. Usa queste misure per identificare i colli di bottiglia, non per premiare i team per l'ottimizzazione dell'attività.",{"type":73,"componentName":73,"componentContent":114},{"header":66,"config":115,"text":117},{"id":116},"what-are-scm-best-practices","* Esegui il commit di modifiche mirate e correlate abbastanza frequentemente da creare checkpoint utili.  \n* Scrivi messaggi di commit che spieghino l'intento e il contesto della modifica.  \n* Inizia il lavoro da una versione corrente del repository.  \n* Usa i rami per isolare le modifiche e le richieste di merge per revisionarle.  \n* Mantieni stabile il ramo predefinito e proteggilo da modifiche non revisionate.  \n* Automatizza test e controlli ripetibili prima del merge.  \n* Definisci le responsabilità di proprietà e approvazione per il codice importante.  \n* Proteggi segreti, credenziali e impostazioni sensibili del progetto.  \n* Concorda un flusso di lavoro di ramificazione e merge che il team possa seguire in modo coerente.  \n* Usa la cronologia del repository per indagare sulle regressioni e migliorare le modifiche future.",{"type":73,"componentName":73,"componentContent":119},{"header":70,"config":120,"text":122},{"id":121},"take-the-next-step-with-gitlab","GitLab riunisce in un'unica piattaforma gestione del codice sorgente basata su Git, revisione del codice, CI/CD, sicurezza e governance. I team possono utilizzare un repository condiviso e un flusso di lavoro di ramificazione applicando al contempo i controlli e l'automazione necessari per portare il software dalla modifica alla distribuzione.\n\n> [**Scopri la gestione del codice sorgente di GitLab**](https://about.gitlab.com/solutions/source-code-management/)",{"type":124,"componentName":124,"componentContent":125},"CommonFaq",{"header":126,"groups":127},"Domande frequenti",[128],{"questions":129},[130,133,136,139,142,145],{"question":131,"answer":132},"Che cos'è la gestione del codice sorgente nello sviluppo software?","La gestione del codice sorgente la pratica di tracciare, revisionare e gestire le modifiche al codice sorgente e ai file di progetto correlati. Aiuta i team a collaborare, mantenere la cronologia, risolvere conflitti e controllare come le modifiche raggiungono i rami condivisi e la produzione.",{"question":134,"answer":135},"La gestione del codice sorgente è la stessa cosa del controllo della versione?","Gestione del codice sorgente e controllo della versione sono spesso usati in modo intercambiabile. Il controllo della versione è il sistema che registra le revisioni dei file, mentre la gestione del codice sorgente può anche descrivere i flussi di lavoro di collaborazione, revisione, governance e distribuzione correlati.",{"question":137,"answer":138},"Qual è la differenza tra Git e GitLab?","Git è un sistema di controllo della versione distribuito. GitLab è una piattaforma che fornisce repository Git insieme a revisione del codice, CI/CD, sicurezza, governance e altre funzionalità del ciclo di vita del software.",{"question":140,"answer":141},"Che cos'è un repository di codice sorgente?","Un repository di codice sorgente è la posizione del progetto in cui vengono archiviati i file sorgente e la loro cronologia delle modifiche. Offre ai collaboratori uno spazio condiviso in cui lavorare insieme e fornisce le informazioni di revisione necessarie per confrontare, esaminare e recuperare le modifiche.",{"question":143,"answer":144},"Perché si usano i rami nella gestione del codice sorgente?","I rami creano linee di sviluppo separate in modo che i collaboratori possano lavorare su funzionalità, correzioni o esperimenti senza modificare il ramo predefinito condiviso prima che il lavoro sia pronto. Le modifiche possono essere successivamente sottoposte a revisione e merge.",{"question":146,"answer":147},"Cosa dovrebbe considerare un'azienda quando sceglie una piattaforma di gestione del codice sorgente?","Le aziende dovrebbero considerare le funzionalità di repository e ramificazione, la revisione del codice, le autorizzazioni, le approvazioni, la verificabilità, la sicurezza, la conformità, la CI/CD, le integrazioni, la scalabilità, il modello di deployment e l'esperienza dello sviluppatore (DevEx).",{"type":149,"componentName":149},"CommonNextSteps","yml",{},true,"/it-it/topics/source-code-management",{"config":155,"title":34,"ogTitle":34,"description":157,"ogDescription":157},{"noIndex":156},false,"Scopri la gestione del codice sorgente e come controllo versione, ramificazione, revisione del codice e CI/CD aiutano a distribuire software sicuro con GitLab.","it-it/topics/source-code-management/index","0KITFQrqwwSaq9SXRzjpAGcapgO4UHBVoyiVsy_pmLA",{"logo":161,"freeTrial":166,"sales":171,"login":176,"items":181,"search":511,"minimal":546,"duo":565,"switchNav":574,"pricingDeployment":585},{"config":162},{"href":163,"dataGaName":164,"dataGaLocation":165},"/it-it/","gitlab logo","header",{"text":167,"config":168},"Ottieni una prova gratuita",{"href":169,"dataGaName":170,"dataGaLocation":165},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/it-it&glm_content=default-saas-trial/","free trial",{"text":172,"config":173},"Richiedi una demo",{"href":174,"dataGaName":175,"dataGaLocation":165},"/request-a-demo/","sales",{"text":177,"config":178},"Accedi",{"href":179,"dataGaName":180,"dataGaLocation":165},"https://gitlab.com/users/sign_in/","sign in",[182,267,355,360,435,489],{"text":183,"left":152,"config":184,"menu":186},"Piattaforma",{"dataNavLevelOne":185},"platform",{"type":187,"link":188,"columns":192,"feature":256},"lists",{"text":189,"config":190},"Scopri la piattaforma",{"href":191,"dataGaName":185,"dataGaLocation":165},"/it-it/platform/",[193,215,238],{"title":194,"items":195},"Esecuzione e flussi di lavoro",[196,201,205,210],{"text":197,"config":198},"CI/CD",{"href":199,"dataGaLocation":165,"dataGaName":200},"/it-it/solutions/continuous-integration/","ci/cd",{"text":17,"config":202},{"href":203,"dataGaLocation":165,"dataGaName":204},"/it-it/solutions/source-code-management/","source code management",{"text":206,"config":207},"Distribuzione Agile",{"href":208,"dataGaLocation":165,"dataGaName":209},"/it-it/solutions/agile-delivery/","agile delivery",{"text":211,"config":212},"Gestione degli artefatti",{"href":213,"dataGaLocation":165,"dataGaName":214},"/it-it/artifact-central/","artifact management",{"title":216,"items":217},"Sicurezza e governance",[218,223,228,233],{"text":219,"config":220},"Test della sicurezza delle applicazioni",{"href":221,"dataGaLocation":165,"dataGaName":222},"/it-it/solutions/application-security-testing/","application security testing",{"text":224,"config":225},"Governance e conformità",{"href":226,"dataGaLocation":165,"dataGaName":227},"/it-it/solutions/software-compliance/","governance and compliance",{"text":229,"config":230},"Gestione dei segreti",{"href":231,"dataGaLocation":165,"dataGaName":232},"/it-it/gitlab-secrets-manager/","secrets management",{"text":234,"config":235},"Sicurezza della catena di approvvigionamento",{"href":236,"dataGaLocation":165,"dataGaName":237},"/it-it/solutions/supply-chain/","supply chain security",{"title":239,"items":240},"Contesto e IA",[241,246,251],{"text":242,"config":243},"Orchestrazione agentica",{"href":244,"dataGaLocation":165,"dataGaName":245},"/it-it/gitlab-duo-agent-platform/","agentic orchestration",{"text":247,"config":248},"Grafo del contesto",{"href":249,"dataGaLocation":165,"dataGaName":250},"/it-it/gitlab-orbit/","context graph",{"text":252,"config":253},"Visibilità e misurazione",{"href":254,"dataGaLocation":165,"dataGaName":255},"/it-it/solutions/visibility-measurement/","visibility and measurement",{"config":257,"title":260,"text":261,"link":262},{"background":258,"textColor":259},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1790185102/o7dn32anqcb6z8dgd3as.jpg')","#000","Perché scegliere GitLab","Un'unica piattaforma per lavorare più velocemente, mantenendo il controllo sull'intero ciclo di vita del software.",{"text":263,"config":264},"Scopri di più",{"href":265,"dataGaName":266,"dataGaLocation":165},"/it-it/why-gitlab/","why gitlab",{"text":268,"left":152,"config":269,"menu":271},"Soluzioni",{"dataNavLevelOne":270},"solutions",{"type":187,"link":272,"columns":276,"feature":346},{"text":273,"config":274},"Vedi tutte le soluzioni",{"href":275,"dataGaName":270,"dataGaLocation":165},"/it-it/solutions/",[277,295,313],{"title":278,"items":279},"Risultati",[280,285,290],{"text":281,"config":282},"Modernizzazione DevOps",{"href":283,"dataGaLocation":165,"dataGaName":284},"/it-it/assessments/devops-modernization-assessment/","devops modernization",{"text":286,"config":287},"Modernizzazione della sicurezza",{"href":288,"dataGaLocation":165,"dataGaName":289},"/it-it/assessments/security-modernization-assessment/","security modernization",{"text":291,"config":292},"Modernizzazione tramite l'IA",{"href":293,"dataGaLocation":165,"dataGaName":294},"/it-it/assessments/ai-modernization-assessment/","ai modernization",{"title":296,"items":297},"Per dimensioni",[298,303,308],{"text":299,"config":300},"Aziende",{"href":301,"dataGaLocation":165,"dataGaName":302},"/it-it/enterprise/","enterprise",{"text":304,"config":305},"Piccole imprese",{"href":306,"dataGaLocation":165,"dataGaName":307},"/it-it/small-business/","small business",{"text":309,"config":310},"Start-up",{"href":311,"dataGaLocation":165,"dataGaName":312},"/it-it/solutions/startups/","startups",{"title":314,"items":315},"Settori",[316,321,326,331,336,341],{"text":317,"config":318},"Servizi finanziari",{"href":319,"dataGaLocation":165,"dataGaName":320},"/it-it/solutions/finance/","financial services",{"text":322,"config":323},"Pubblica amministrazione",{"href":324,"dataGaLocation":165,"dataGaName":325},"/it-it/solutions/public-sector/","public sector",{"text":327,"config":328},"Telecomunicazioni",{"href":329,"dataGaLocation":165,"dataGaName":330},"/it-it/solutions/telecommunications/","telecommunications",{"text":332,"config":333},"Automotive",{"href":334,"dataGaLocation":165,"dataGaName":335},"/it-it/solutions/automotive/","automotive",{"text":337,"config":338},"Istruzione",{"href":339,"dataGaLocation":165,"dataGaName":340},"/it-it/solutions/education/","education",{"text":342,"config":343},"Industria aerospaziale",{"href":344,"dataGaLocation":165,"dataGaName":345},"/it-it/solutions/aerospace/","aerospace",{"config":347,"title":348,"text":349,"link":350},{"background":258,"textColor":259},"Standard di sicurezza di GitLab","Scopri come rafforzare la tua software factory e consentire agli agenti IA di acquisire autonomia senza compromettere la sicurezza.",{"text":351,"config":352},"Scopri lo standard",{"href":353,"dataGaName":354,"dataGaLocation":165},"/it-it/gitlab-security-standard/","gitlab security standard",{"text":356,"config":357},"Prezzi",{"href":358,"dataGaName":359,"dataGaLocation":165,"dataNavLevelOne":359},"/it-it/pricing/","pricing",{"text":361,"config":362,"menu":364},"Risorse",{"dataNavLevelOne":363},"resources",{"type":187,"link":365,"columns":369,"feature":426},{"text":366,"config":367},"Visualizza tutte le risorse",{"href":368,"dataGaName":363,"dataGaLocation":165},"/it-it/resources/",[370,398],{"title":371,"items":372},"Scopri",[373,378,383,388,393],{"text":374,"config":375},"Documentazione",{"href":376,"dataGaName":377,"dataGaLocation":165},"https://docs.gitlab.com/","docs",{"text":379,"config":380},"University",{"href":381,"dataGaName":382,"dataGaLocation":165},"https://university.gitlab.com/","university",{"text":384,"config":385},"Serie di demo",{"href":386,"dataGaName":387,"dataGaLocation":165},"/it-it/gitlab-technical-demo-series/","demo series",{"text":389,"config":390},"Hub delle demo",{"href":391,"dataGaName":392,"dataGaLocation":165},"/it-it/demo-hub/","demo hub",{"text":394,"config":395},"Servizi",{"href":396,"dataGaName":397,"dataGaLocation":165},"/it-it/services/","services",{"title":399,"items":400},"Entra in contatto",[401,406,411,416,421],{"text":402,"config":403},"Blog",{"href":404,"dataGaName":405,"dataGaLocation":165},"/blog/","blog",{"text":407,"config":408},"Community",{"href":409,"dataGaName":410,"dataGaLocation":165},"/community/","community",{"text":412,"config":413},"Clienti",{"href":414,"dataGaName":415,"dataGaLocation":165},"/it-it/customers/","customers",{"text":417,"config":418},"Partner",{"href":419,"dataGaName":420,"dataGaLocation":165},"/it-it/partners/","partners",{"text":422,"config":423},"Eventi",{"href":424,"dataGaName":425,"dataGaLocation":165},"/events/","events",{"config":427,"title":428,"text":429,"link":430},{"background":258,"textColor":259},"Novità in GitLab","Scopri tutte le ultime funzionalità e i miglioramenti di GitLab.",{"text":431,"config":432},"Scopri le ultime novità",{"href":433,"dataGaName":434,"dataGaLocation":165},"/it-it/whats-new/","whats new",{"text":436,"config":437,"menu":439},"Azienda",{"dataNavLevelOne":438},"company",{"type":187,"columns":440},[441],{"items":442},[443,448,454,459,464,469,474,479,484],{"text":444,"config":445},"Informazioni",{"href":446,"dataGaName":447,"dataGaLocation":165},"/it-it/company/","about",{"text":449,"config":450,"footerGa":453},"Opportunità di lavoro",{"href":451,"dataGaName":452,"dataGaLocation":165},"/jobs/","jobs",{"dataGaName":452},{"text":455,"config":456},"Stampa",{"href":457,"dataGaName":458,"dataGaLocation":165},"/press/","press",{"text":460,"config":461},"Manuale",{"href":462,"dataGaName":463,"dataGaLocation":165},"https://handbook.gitlab.com/","handbook",{"text":465,"config":466},"Leadership",{"href":467,"dataGaName":468,"dataGaLocation":165},"/company/team/e-group/","leadership",{"text":470,"config":471},"Rapporti con gli investitori",{"href":472,"dataGaName":473,"dataGaLocation":165},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":475,"config":476},"Trust Center",{"href":477,"dataGaName":478,"dataGaLocation":165},"/it-it/security/","trust center",{"text":480,"config":481},"AI Transparency Center",{"href":482,"dataGaName":483,"dataGaLocation":165},"/it-it/ai-transparency-center/","ai transparency center",{"text":485,"config":486},"Newsletter",{"href":487,"dataGaName":488,"dataGaLocation":165},"/company/contact/#contact-forms","newsletter",{"text":490,"config":491,"menu":492},"Contattaci",{"dataNavLevelOne":438},{"type":187,"columns":493},[494],{"items":495},[496,501,506],{"text":497,"config":498},"Contatta le vendite",{"href":499,"dataGaName":500,"dataGaLocation":165},"/it-it/sales/","talk to sales",{"text":502,"config":503},"Portale di assistenza",{"href":504,"dataGaName":505,"dataGaLocation":165},"https://support.gitlab.com/hc/en-us","support portal",{"text":507,"config":508},"Portale di assistenza clienti GitLab",{"href":509,"dataGaName":510,"dataGaLocation":165},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":512,"login":513,"suggestions":520},"Chiudi",{"text":514,"link":515},"Per cercare repository e progetti, accedi a",{"text":516,"config":517},"gitlab.com",{"href":179,"dataGaName":518,"dataGaLocation":519},"search login","search",{"text":521,"default":522},"Suggerimenti",[523,526,530,532,537,542],{"text":524,"config":525},"GitLab Duo Agent Platform",{"href":244,"dataGaName":524,"dataGaLocation":519},{"text":527,"config":528},"Suggerimenti di codice di GitLab Duo (IA)",{"href":244,"dataGaName":529,"dataGaLocation":519},"Code Suggestions (AI)",{"text":197,"config":531},{"href":199,"dataGaName":197,"dataGaLocation":519},{"text":533,"config":534},"GitLab su AWS",{"href":535,"dataGaName":536,"dataGaLocation":519},"/it-it/partners/technology-partners/aws/","GitLab on AWS",{"text":538,"config":539},"GitLab su Google Cloud",{"href":540,"dataGaName":541,"dataGaLocation":519},"/it-it/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":543,"config":544},"Perché scegliere GitLab?",{"href":265,"dataGaName":545,"dataGaLocation":519},"Why GitLab?",{"freeTrial":547,"mobileIcon":552,"desktopIcon":557,"secondaryButton":560},{"text":548,"config":549},"Inizia una prova gratuita",{"href":550,"dataGaName":170,"dataGaLocation":551},"https://gitlab.com/-/trials/new/","nav",{"altText":553,"config":554},"Icona GitLab",{"src":555,"dataGaName":556,"dataGaLocation":551},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":553,"config":558},{"src":559,"dataGaName":556,"dataGaLocation":551},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":561,"config":562},"Inizia",{"href":563,"dataGaName":564,"dataGaLocation":551},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/it-it/get-started/","get started",{"freeTrial":566,"mobileIcon":570,"desktopIcon":572},{"text":567,"config":568},"Scopri di più su GitLab Duo",{"href":244,"dataGaName":569,"dataGaLocation":551},"gitlab duo",{"altText":553,"config":571},{"src":555,"dataGaName":556,"dataGaLocation":551},{"altText":553,"config":573},{"src":559,"dataGaName":556,"dataGaLocation":551},{"button":575,"mobileIcon":580,"desktopIcon":582},{"text":576,"config":577},"/switch",{"href":578,"dataGaName":579,"dataGaLocation":551},"#contact","switch",{"altText":553,"config":581},{"src":555,"dataGaName":556,"dataGaLocation":551},{"altText":553,"config":583},{"src":584,"dataGaName":556,"dataGaLocation":551},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":586,"mobileIcon":591,"desktopIcon":593},{"text":587,"config":588},"Torna ai prezzi",{"href":358,"dataGaName":589,"dataGaLocation":551,"icon":590},"back to pricing","GoBack",{"altText":553,"config":592},{"src":555,"dataGaName":556,"dataGaLocation":551},{"altText":553,"config":594},{"src":559,"dataGaName":556,"dataGaLocation":551},{"title":596,"button":597,"config":600},"GitLab Orbit è arrivato: il livello di contesto per gli agenti di IA.",{"text":263,"config":598},{"href":249,"dataGaName":599,"dataGaLocation":165},"orbit",{"layout":601,"disabled":156},"release",{"data":603},{"text":604,"source":605,"edit":611,"contribute":616,"config":621,"items":626,"minimal":844},"Git è un marchio commerciale di Software Freedom Conservancy e l'uso del termine \"GitLab\" è regolato da un accordo di licenza",{"text":606,"config":607},"Visualizza origine pagina",{"href":608,"dataGaName":609,"dataGaLocation":610},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":612,"config":613},"Modifica questa pagina",{"href":614,"dataGaName":615,"dataGaLocation":610},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":617,"config":618},"Contribuisci",{"href":619,"dataGaName":620,"dataGaLocation":610},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":622,"facebook":623,"youtube":624,"linkedin":625},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[627,673,729,770,811],{"title":356,"links":628,"subMenu":643},[629,633,638],{"text":630,"config":631},"Visualizza i piani",{"href":358,"dataGaName":632,"dataGaLocation":610},"view plans",{"text":634,"config":635},"Perché scegliere Premium?",{"href":636,"dataGaName":637,"dataGaLocation":610},"/it-it/pricing/premium/","why premium",{"text":639,"config":640},"Perché scegliere Ultimate?",{"href":641,"dataGaName":642,"dataGaLocation":610},"/it-it/pricing/ultimate/","why ultimate",[644],{"title":490,"links":645},[646,649,651,653,658,663,668],{"text":647,"config":648},"Contatta il reparto vendite",{"href":499,"dataGaName":175,"dataGaLocation":610},{"text":502,"config":650},{"href":504,"dataGaName":505,"dataGaLocation":610},{"text":507,"config":652},{"href":509,"dataGaName":510,"dataGaLocation":610},{"text":654,"config":655},"Stato",{"href":656,"dataGaName":657,"dataGaLocation":610},"https://status.gitlab.com/","status",{"text":659,"config":660},"Termini di utilizzo",{"href":661,"dataGaName":662,"dataGaLocation":610},"/terms/","terms of use",{"text":664,"config":665},"Informativa sulla privacy",{"href":666,"dataGaName":667,"dataGaLocation":610},"/it-it/privacy/","privacy statement",{"text":669,"config":670},"Preferenze dei cookie",{"dataGaName":671,"dataGaLocation":610,"id":672,"isOneTrustButton":152},"cookie preferences","ot-sdk-btn",{"title":183,"links":674,"subMenu":687},[675,677,679,681,683,685],{"text":189,"config":676},{"href":191,"dataGaName":185,"dataGaLocation":610},{"text":242,"config":678},{"href":244,"dataGaName":245,"dataGaLocation":610},{"text":197,"config":680},{"href":199,"dataGaName":200,"dataGaLocation":610},{"text":247,"config":682},{"href":249,"dataGaName":250,"dataGaLocation":610},{"text":229,"config":684},{"href":231,"dataGaName":232,"dataGaLocation":610},{"text":543,"config":686},{"href":265,"dataGaName":266,"dataGaLocation":610},[688],{"title":13,"links":689},[690,694,699,704,709,714,719,724],{"text":197,"config":691},{"href":692,"dataGaName":693,"dataGaLocation":610},"/it-it/topics/ci-cd/","cicd",{"text":695,"config":696},"GitOps",{"href":697,"dataGaName":698,"dataGaLocation":610},"/it-it/topics/gitops/","gitops",{"text":700,"config":701},"DevOps",{"href":702,"dataGaName":703,"dataGaLocation":610},"/it-it/topics/devops/","devops",{"text":705,"config":706},"Controllo della versione",{"href":707,"dataGaName":708,"dataGaLocation":610},"/it-it/topics/version-control/","version control",{"text":710,"config":711},"DevSecOps",{"href":712,"dataGaName":713,"dataGaLocation":610},"/it-it/topics/devsecops/","devsecops",{"text":715,"config":716},"Cloud native",{"href":717,"dataGaName":718,"dataGaLocation":610},"/it-it/topics/cloud-native/","cloud native",{"text":720,"config":721},"IA per la programmazione",{"href":722,"dataGaName":723,"dataGaLocation":610},"/it-it/topics/devops/ai-for-coding/","ai for coding",{"text":725,"config":726},"IA agentica",{"href":727,"dataGaName":728,"dataGaLocation":610},"/it-it/topics/agentic-ai/","agentic ai",{"title":268,"links":730},[731,733,735,737,739,741,743,745,747,749,751,753,755,758,762,766],{"text":281,"config":732},{"href":283,"dataGaName":284,"dataGaLocation":610},{"text":286,"config":734},{"href":288,"dataGaName":289,"dataGaLocation":610},{"text":291,"config":736},{"href":293,"dataGaName":294,"dataGaLocation":610},{"text":317,"config":738},{"href":319,"dataGaName":320,"dataGaLocation":610},{"text":322,"config":740},{"href":324,"dataGaName":325,"dataGaLocation":610},{"text":327,"config":742},{"href":329,"dataGaName":330,"dataGaLocation":610},{"text":332,"config":744},{"href":334,"dataGaName":335,"dataGaLocation":610},{"text":337,"config":746},{"href":339,"dataGaName":340,"dataGaLocation":610},{"text":342,"config":748},{"href":344,"dataGaName":345,"dataGaLocation":610},{"text":299,"config":750},{"href":301,"dataGaName":302,"dataGaLocation":610},{"text":304,"config":752},{"href":306,"dataGaName":307,"dataGaLocation":610},{"text":309,"config":754},{"href":311,"dataGaName":312,"dataGaLocation":610},{"text":695,"config":756},{"href":757,"dataGaName":698,"dataGaLocation":610},"/it-it/solutions/gitops/",{"text":759,"config":760},"Analisi della composizione del software",{"href":236,"dataGaName":761,"dataGaLocation":610},"software composition analysis",{"text":763,"config":764},"Gestione del flusso di valore",{"href":254,"dataGaName":765,"dataGaLocation":610},"value stream management",{"text":767,"config":768},"Tutte le soluzioni",{"href":275,"dataGaName":769,"dataGaLocation":610},"all solutions",{"title":361,"links":771},[772,777,782,784,786,788,790,792,794,796,798,800,802,804,807],{"text":773,"config":774},"Installazione",{"href":775,"dataGaName":776,"dataGaLocation":610},"/it-it/install/","install",{"text":778,"config":779},"Guide rapide",{"href":780,"dataGaName":781,"dataGaLocation":610},"/it-it/get-started/","quick setup checklists",{"text":374,"config":783},{"href":376,"dataGaName":377,"dataGaLocation":610},{"text":379,"config":785},{"href":381,"dataGaName":382,"dataGaLocation":610},{"text":384,"config":787},{"href":386,"dataGaName":387,"dataGaLocation":610},{"text":389,"config":789},{"href":391,"dataGaName":392,"dataGaLocation":610},{"text":394,"config":791},{"href":396,"dataGaName":397,"dataGaLocation":610},{"text":402,"config":793},{"href":404,"dataGaName":405,"dataGaLocation":610},{"text":407,"config":795},{"href":409,"dataGaName":410,"dataGaLocation":610},{"text":412,"config":797},{"href":414,"dataGaName":415,"dataGaLocation":610},{"text":417,"config":799},{"href":419,"dataGaName":420,"dataGaLocation":610},{"text":422,"config":801},{"href":424,"dataGaName":425,"dataGaLocation":610},{"text":485,"config":803},{"href":487,"dataGaName":488,"dataGaLocation":610},{"text":805,"config":806},"Novità",{"href":433,"dataGaName":434,"dataGaLocation":610},{"text":808,"config":809},"Tutte le risorse",{"href":368,"dataGaName":810,"dataGaLocation":610},"all resources",{"title":436,"links":812},[813,815,817,819,821,823,825,827,829,834,839],{"text":444,"config":814},{"href":446,"dataGaName":438,"dataGaLocation":610},{"text":449,"config":816},{"href":451,"dataGaName":452,"dataGaLocation":610},{"text":455,"config":818},{"href":457,"dataGaName":458,"dataGaLocation":610},{"text":460,"config":820},{"href":462,"dataGaName":463,"dataGaLocation":610},{"text":465,"config":822},{"href":467,"dataGaName":468,"dataGaLocation":610},{"text":470,"config":824},{"href":472,"dataGaName":473,"dataGaLocation":610},{"text":475,"config":826},{"href":477,"dataGaName":478,"dataGaLocation":610},{"text":480,"config":828},{"href":482,"dataGaName":483,"dataGaLocation":610},{"text":830,"config":831},"Sostenibilità",{"href":832,"dataGaName":833,"dataGaLocation":610},"/sustainability/","Sustainability",{"text":835,"config":836},"Diversità, inclusione e appartenenza (DIB)",{"href":837,"dataGaName":838,"dataGaLocation":610},"/it-it/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":840,"config":841},"Dichiarazione di trasparenza sulla schiavitù moderna",{"href":842,"dataGaName":843,"dataGaLocation":610},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":845},[846,849,852],{"text":847,"config":848},"Termini",{"href":661,"dataGaName":662,"dataGaLocation":610},{"text":850,"config":851},"Cookie",{"dataGaName":671,"dataGaLocation":610,"id":672,"isOneTrustButton":152},{"text":853,"config":854},"Privacy",{"href":666,"dataGaName":667,"dataGaLocation":610},{"header":856,"blurb":857,"button":858,"secondaryButton":863},"Inizia a sviluppare più velocemente oggi","Scopri cosa può fare il tuo team con la piattaforma di orchestrazione intelligente per DevSecOps.\n",{"text":859,"config":860},"Ottieni la tua prova gratuita",{"href":861,"dataGaName":170,"dataGaLocation":862},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/it-it/","feature",{"text":497,"config":864},{"href":499,"dataGaName":175,"dataGaLocation":862},1792375977871]