[{"data":1,"prerenderedAt":820},["ShallowReactive",2],{"/it-it/topics/version-control/what-are-gitlab-flow-best-practices/":3,"navigation-it-it":167,"banner-it-it":585,"footer-it-it":597,"next-steps-it-it":805},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":11,"_id":161,"_type":162,"title":7,"_source":163,"_file":164,"_stem":165,"_extension":166},"/it-it/topics/version-control/what-are-gitlab-flow-best-practices","version-control",false,"",{"title":9,"description":10},"Quali sono le best practice di GitLab Flow?","Adottando queste best practice, i team di sviluppo possono utilizzare GitLab Flow per realizzare il proprio software.",[12,26,31,150,159],{"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},"Version control",{"href":23},"/it-it/topics/version-control/",{"title":25},"What are gitlab flow best practices",{"type":27,"componentName":27,"componentContent":28},"TopicsHero",{"title":9,"text":10,"config":29},{"id":30,"twoColumns":6},"quali-sono-le-best-practice-di-gitlab-flow?",{"type":32,"componentName":32,"componentContent":33},"CommonSideNavigationWithTree",{"anchors":34,"components":81},{"text":35,"data":36},"On this page",[37,41,45,49,53,57,61,65,69,73,77],{"text":38,"config":39},"1. Utilizza i rami delle funzionalità anziché i commit diretti sul ramo principale.",{"href":40},"#1-use-feature-branches-rather-than-direct-commits-on-the-main-branch",{"text":42,"config":43},"2. Testa tutti i commit, non solo quelli sul ramo principale.",{"href":44},"#2-test-all-commits-not-only-ones-on-the-main-branch",{"text":46,"config":47},"3. Esegui ogni test su tutti i commit (se i test durano più di 5 minuti, possono essere eseguiti in parallelo).",{"href":48},"#3-run-every-test-on-all-commits-if-tests-run-longer-than-5-minutes-they-can-run-in-parallel",{"text":50,"config":51},"4. Effettua le revisioni del codice prima di eseguire il merge al ramo principale.",{"href":52},"#4-perform-code-reviews-before-merging-into-the-main-branch",{"text":54,"config":55},"5. I deployment sono automatizzati sulla base di rami o tag.",{"href":56},"#5-deployments-are-automatic-based-on-branches-or-tags",{"text":58,"config":59},"6. I tag vengono impostati dall'utente, non dalla CI.",{"href":60},"#6-tags-are-set-by-the-user-not-by-ci",{"text":62,"config":63},"7. Le release si basano sui tag.",{"href":64},"#7-releases-are-based-on-tags",{"text":66,"config":67},"8. I commit di cui è stato eseguito il push non vengono mai sottoposti a rebase.",{"href":68},"#8-pushed-commits-are-never-rebased",{"text":70,"config":71},"9. Il ramo principale rimane sempre il punto di partenza e di arrivo.",{"href":72},"#9-everyone-starts-from-main-and-targets-main",{"text":74,"config":75},"10. Correggi i bug nel ramo principale e solo dopo nei rami della release.",{"href":76},"#10-fix-bugs-in-main-first-and-release-branches-second",{"text":78,"config":79},"11. I messaggi di commit riflettono l'intento dello sviluppatore.",{"href":80},"#11-commit-messages-reflect-intent",[82,87,92,97,102,107,112,117,122,127,132,137,142],{"type":83,"componentName":83,"componentContent":84},"TopicsCopy",{"text":85,"config":86},"Quando un software viene sviluppato di fretta per accelerarne la distribuzione, i flussi di lavoro possono essere caotici e poco efficienti. Le organizzazioni che in precedenza utilizzavano un altro sistema di [controllo della versione](/topics/version-control/) tendono spesso a trovarsi di fronte a processi impegnativi che rischiano di rallentare lo sviluppo. Grazie a [GitLab Flow](/topics/version-control/what-is-gitlab-flow/), i team possono avvalersi dello sviluppo basato sulle funzionalità e dei rami delle funzionalità, insieme al monitoraggio dei ticket, per fare in modo che ogni membro del team garantisca la massima efficienza. Adottando i suggerimenti di GitLab Flow, i team di sviluppo possono semplificare il processo, produrre risultati migliori e scrivere codice in modo più ordinato.\n",{"id":7},{"type":83,"componentName":83,"componentContent":88},{"header":38,"text":89,"config":90},"L'utilizzo dei rami delle funzionalità è un modo semplice per sviluppare e mantenere ordinato il [codice sorgente](/solutions/source-code-management/). Ad esempio, se un team è passato di recente da SVN a Git, gli sviluppatori saranno già abituati a un flusso di lavoro basato su trunk. Quando si utilizza Git, è necessario creare un ramo per ogni elemento a cui si lavora in modo che i collaboratori possano avviare facilmente il [processo di revisione del codice](/topics/version-control/what-is-code-review/) prima di eseguire il merge.\n",{"id":91},"1-use-feature-branches-rather-than-direct-commits-on-the-main-branch",{"type":83,"componentName":83,"componentContent":93},{"header":42,"text":94,"config":95},"Alcuni sviluppatori configurano il processo di integrazione continua per testare solo gli elementi il cui merge sia stato eseguito al ramo `main`. Tuttavia, ciò avviene troppo tardi all'interno del ciclo di sviluppo software e tutte le parti in causa, dai programmatori ai product manager, dovrebbero essere sempre sicuri che il ramo `main` sia stabile e funzioni correttamente. Testare il ramo `main` prima di iniziare a sviluppare nuove funzionalità non è una pratica efficiente.\n",{"id":96},"2-test-all-commits-not-only-ones-on-the-main-branch",{"type":83,"componentName":83,"componentContent":98},{"header":46,"text":99,"config":100},"Quando lavori su un ramo `feature` e aggiungi nuovi commit, esegui subito i test. Se i test richiedono molto tempo, prova a eseguirli in parallelo. Effettua questa operazione lato server nelle richieste di merge, eseguendo la suite di test completa. Se disponi di una suite di test per lo sviluppo e di un'altra specifica per le nuove versioni, vale la pena impostare test \\[in parallelo] ed eseguirli tutti.\n",{"id":101},"3-run-every-test-on-all-commits-if-tests-run-longer-than-5-minutes-they-can-run-in-parallel",{"type":83,"componentName":83,"componentContent":103},{"header":50,"text":104,"config":105},"Non testare tutti gli elementi alla fine della settimana o al termine di un progetto. Le revisioni del codice devono essere effettuate il prima possibile, in quanto ciò offre agli sviluppatori maggiori probabilità di identificare i ticket che potrebbero causare problemi nelle fasi successive del ciclo di vita. Se un errore viene rilevato tempestivamente, sarà più semplice creare soluzioni adeguate.\n",{"id":106},"4-perform-code-reviews-before-merging-into-the-main-branch",{"type":83,"componentName":83,"componentContent":108},{"header":54,"text":109,"config":110},"Se gli sviluppatori non vogliono eseguire il deployment del ramo `main` ogni volta, possono crearne uno `production`. Piuttosto che utilizzare uno script o eseguire l'operazione manualmente, i team possono sfruttare l'automazione oppure fare in modo che un ramo specifico attivi un [deployment di produzione](https://docs.gitlab.com/ee/ci/yaml/#environment).\n",{"id":111},"5-deployments-are-automatic-based-on-branches-or-tags",{"type":83,"componentName":83,"componentContent":113},{"header":58,"text":114,"config":115},"Gli sviluppatori devono utilizzare `tags` in modo che la CI esegua un'azione anziché fare in modo che la CI apporti modifiche al repository. Se i team necessitano di metriche approfondite, devono disporre di un report sul server che descriva nel dettaglio le nuove versioni.\n",{"id":116},"6-tags-are-set-by-the-user-not-by-ci",{"type":83,"componentName":83,"componentContent":118},{"header":62,"text":119,"config":120},"Ogni tag deve creare una nuova release. Questa pratica permette di approntare un ambiente di sviluppo ordinato ed efficiente.\n",{"id":121},"7-releases-are-based-on-tags",{"type":83,"componentName":83,"componentContent":123},{"header":66,"text":124,"config":125},"Quando eseguono il push a un ramo pubblico, gli sviluppatori non devono sottoporlo a rebase, perché ciò renderebbe difficile identificare i miglioramenti e i risultati dei test durante il [cherry pick](https://git-scm.com/docs/git-cherry-pick). Questo suggerimento può essere ignorato nel caso in cui si chieda a qualcuno di eseguire lo squash e il rebase al termine del processo di revisione del codice per semplificare le operazioni di ripristino. Tuttavia, di norma, il codice deve essere ordinato e la cronologia realistica.\n",{"id":126},"8-pushed-commits-are-never-rebased",{"type":83,"componentName":83,"componentContent":128},{"header":70,"text":129,"config":130},"Questo suggerimento serve a evitare la creazione di rami eccessivamente lunghi. Gli sviluppatori eseguono il checkout del ramo `main`, realizzano una funzionalità, creano una richiesta di merge e utilizzano il ramo `main` come destinazione effettuando una revisione completa **prima** di eseguire il merge ed eliminare eventuali fasi intermedie.\n",{"id":131},"9-everyone-starts-from-main-and-targets-main",{"type":83,"componentName":83,"componentContent":133},{"header":74,"text":134,"config":135},"Una volta identificato, un bug potrebbe venire risolto nella versione appena rilasciata ma non nel ramo `main`. Ciò può causare dei problemi. Per evitare una situazione di questo tipo, gli sviluppatori devono sempre eseguire il push della modifica nel ramo `main` e poi effettuare il cherry pick in un altro ramo `patch-release`.\n",{"id":136},"10-fix-bugs-in-main-first-and-release-branches-second",{"type":83,"componentName":83,"componentContent":138},{"header":78,"text":139,"config":140},"Gli sviluppatori devono sempre illustrare e motivare il proprio operato. Un approccio persino più efficace consiste nello spiegare perché una determinata opzione sia stata preferita ad altre, così da aiutare i futuri collaboratori a comprendere il processo di sviluppo. La scrittura di messaggi di commit descrittivi è utile per le revisioni del codice e per le fasi successive del processo di sviluppo.\n",{"id":141},"11-commit-messages-reflect-intent",{"type":143,"componentName":143,"componentContent":144},"TopicsCallToAction",{"subtitle":145,"primaryButton":146},"Scopri come GitLab ottimizza il processo di revisione del codice",{"text":147,"config":148},"Scopri di più",{"href":149},"/it-it/solutions/source-code-management/",{"type":151,"componentName":151,"componentContent":152},"CommonResourcesContainer",{"header":153,"tabs":154},"Vuoi saperne di più sulle best practice per lo sviluppo software?",[155],{"name":156,"items":157,"config":158},"resources",[],{"key":156},{"type":160,"componentName":160},"CommonNextSteps","content:it-it:topics:version-control:what-are-gitlab-flow-best-practices:index.yml","yaml","content","it-it/topics/version-control/what-are-gitlab-flow-best-practices/index.yml","it-it/topics/version-control/what-are-gitlab-flow-best-practices/index","yml",{"_path":168,"_dir":169,"_draft":6,"_partial":6,"_locale":7,"data":170,"_id":581,"_type":162,"title":582,"_source":163,"_file":583,"_stem":584,"_extension":166},"/shared/it-it/main-navigation","it-it",{"logo":171,"freeTrial":176,"sales":181,"login":186,"items":191,"search":522,"minimal":558,"duo":572},{"config":172},{"href":173,"dataGaName":174,"dataGaLocation":175},"/it-it/","gitlab logo","header",{"text":177,"config":178},"Ottieni una prova gratuita",{"href":179,"dataGaName":180,"dataGaLocation":175},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":182,"config":183},"Contatta le vendite",{"href":184,"dataGaName":185,"dataGaLocation":175},"/it-it/sales/","sales",{"text":187,"config":188},"Accedi",{"href":189,"dataGaName":190,"dataGaLocation":175},"https://gitlab.com/users/sign_in/","sign in",[192,235,333,338,443,503],{"text":193,"config":194,"cards":196,"footer":218},"Piattaforma",{"dataNavLevelOne":195},"platform",[197,203,211],{"title":193,"description":198,"link":199},"La piattaforma DevSecOps più completa basata sull'IA",{"text":200,"config":201},"Scopri la nostra piattaforma",{"href":202,"dataGaName":195,"dataGaLocation":175},"/it-it/platform/",{"title":204,"description":205,"link":206},"GitLab Duo (IA)","Sviluppa software più velocemente con l'IA in ogni fase del ciclo di sviluppo",{"text":207,"config":208},"Ti presentiamo GitLab Duo",{"href":209,"dataGaName":210,"dataGaLocation":175},"/it-it/gitlab-duo/","gitlab duo ai",{"title":212,"description":213,"link":214},"Perché scegliere GitLab","Dieci motivi per cui le aziende scelgono GitLab",{"text":147,"config":215},{"href":216,"dataGaName":217,"dataGaLocation":175},"/it-it/why-gitlab/","why gitlab",{"title":219,"items":220},"Primi passi con",[221,226,231],{"text":222,"config":223},"Platform engineering",{"href":224,"dataGaName":225,"dataGaLocation":175},"/it-it/solutions/platform-engineering/","platform engineering",{"text":227,"config":228},"Esperienza d'uso degli sviluppatori",{"href":229,"dataGaName":230,"dataGaLocation":175},"/it-it/developer-experience/","Developer experience",{"text":232,"config":233},"MLOps",{"href":234,"dataGaName":232,"dataGaLocation":175},"/it-it/topics/devops/the-role-of-ai-in-devops/",{"text":236,"left":237,"config":238,"link":240,"lists":244,"footer":315},"Prodotti",true,{"dataNavLevelOne":239},"solutions",{"text":241,"config":242},"Visualizza tutte le soluzioni",{"href":243,"dataGaName":239,"dataGaLocation":175},"/it-it/solutions/",[245,270,293],{"title":246,"description":247,"link":248,"items":253},"Automazione","CI/CD e automazione per accelerare il deployment",{"config":249},{"icon":250,"href":251,"dataGaName":252,"dataGaLocation":175},"AutomatedCodeAlt","/it-it/solutions/delivery-automation/","automated software delivery",[254,258,262,266],{"text":255,"config":256},"CI/CD",{"href":257,"dataGaLocation":175,"dataGaName":255},"/it-it/solutions/continuous-integration/",{"text":259,"config":260},"Sviluppo assistito dall'IA",{"href":209,"dataGaLocation":175,"dataGaName":261},"AI assisted development",{"text":263,"config":264},"Gestione del codice sorgente",{"href":149,"dataGaLocation":175,"dataGaName":265},"Source Code Management",{"text":267,"config":268},"Distribuzione software automatizzata",{"href":251,"dataGaLocation":175,"dataGaName":269},"Automated software delivery",{"title":271,"description":272,"link":273,"items":278},"Sicurezza","Distribuisci il codice più velocemente senza compromettere la sicurezza",{"config":274},{"href":275,"dataGaName":276,"dataGaLocation":175,"icon":277},"/it-it/solutions/security-compliance/","security and compliance","ShieldCheckLight",[279,283,288],{"text":280,"config":281},"Sicurezza e conformità",{"href":275,"dataGaLocation":175,"dataGaName":282},"Security & Compliance",{"text":284,"config":285},"Sicurezza della catena di fornitura del software",{"href":286,"dataGaLocation":175,"dataGaName":287},"/it-it/solutions/supply-chain/","Software supply chain security",{"text":289,"config":290},"Conformità e governance",{"href":291,"dataGaLocation":175,"dataGaName":292},"/it-it/solutions/continuous-software-compliance/","Compliance and governance",{"title":294,"link":295,"items":300},"Misurazione",{"config":296},{"icon":297,"href":298,"dataGaName":299,"dataGaLocation":175},"DigitalTransformation","/it-it/solutions/visibility-measurement/","visibility and measurement",[301,305,310],{"text":302,"config":303},"Visibilità e misurazione",{"href":298,"dataGaLocation":175,"dataGaName":304},"Visibility and Measurement",{"text":306,"config":307},"Gestione del flusso di valore",{"href":308,"dataGaLocation":175,"dataGaName":309},"/it-it/solutions/value-stream-management/","Value Stream Management",{"text":311,"config":312},"Analisi e approfondimenti",{"href":313,"dataGaLocation":175,"dataGaName":314},"/it-it/solutions/analytics-and-insights/","Analytics and insights",{"title":316,"items":317},"GitLab per",[318,323,328],{"text":319,"config":320},"Aziende",{"href":321,"dataGaLocation":175,"dataGaName":322},"/it-it/enterprise/","enterprise",{"text":324,"config":325},"Piccole imprese",{"href":326,"dataGaLocation":175,"dataGaName":327},"/it-it/small-business/","small business",{"text":329,"config":330},"Pubblica amministrazione",{"href":331,"dataGaLocation":175,"dataGaName":332},"/it-it/solutions/public-sector/","public sector",{"text":334,"config":335},"Prezzi",{"href":336,"dataGaName":337,"dataGaLocation":175,"dataNavLevelOne":337},"/it-it/pricing/","pricing",{"text":339,"config":340,"link":341,"lists":345,"feature":430},"Risorse",{"dataNavLevelOne":156},{"text":342,"config":343},"Visualizza tutte le risorse",{"href":344,"dataGaName":156,"dataGaLocation":175},"/it-it/resources/",[346,379,402],{"title":347,"items":348},"Per iniziare",[349,354,359,364,369,374],{"text":350,"config":351},"Installazione",{"href":352,"dataGaName":353,"dataGaLocation":175},"/it-it/install/","install",{"text":355,"config":356},"Guide rapide",{"href":357,"dataGaName":358,"dataGaLocation":175},"/it-it/get-started/","quick setup checklists",{"text":360,"config":361},"Formazione",{"href":362,"dataGaLocation":175,"dataGaName":363},"https://university.gitlab.com/","learn",{"text":365,"config":366},"Documentazione di prodotto",{"href":367,"dataGaName":368,"dataGaLocation":175},"https://docs.gitlab.com/","product documentation",{"text":370,"config":371},"Video sulle best practice",{"href":372,"dataGaName":373,"dataGaLocation":175},"/it-it/getting-started-videos/","best practice videos",{"text":375,"config":376},"Integrazioni",{"href":377,"dataGaName":378,"dataGaLocation":175},"/it-it/integrations/","integrations",{"title":380,"items":381},"Scopri",[382,387,392,397],{"text":383,"config":384},"Storie di successo dei clienti",{"href":385,"dataGaName":386,"dataGaLocation":175},"/it-it/customers/","customer success stories",{"text":388,"config":389},"Blog",{"href":390,"dataGaName":391,"dataGaLocation":175},"/blog/","blog",{"text":393,"config":394},"Lavorare da remoto",{"href":395,"dataGaName":396,"dataGaLocation":175},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":398,"config":399},"TeamOps",{"href":400,"dataGaName":401,"dataGaLocation":175},"/it-it/teamops/","teamops",{"title":403,"items":404},"Connetti",[405,410,415,420,425],{"text":406,"config":407},"Servizi GitLab",{"href":408,"dataGaName":409,"dataGaLocation":175},"/it-it/services/","services",{"text":411,"config":412},"Community",{"href":413,"dataGaName":414,"dataGaLocation":175},"/community/","community",{"text":416,"config":417},"Forum",{"href":418,"dataGaName":419,"dataGaLocation":175},"https://forum.gitlab.com/","forum",{"text":421,"config":422},"Eventi",{"href":423,"dataGaName":424,"dataGaLocation":175},"/events/","events",{"text":426,"config":427},"Partner",{"href":428,"dataGaName":429,"dataGaLocation":175},"/it-it/partners/","partners",{"backgroundColor":431,"textColor":432,"text":433,"image":434,"link":438},"#2f2a6b","#fff","Approfondimenti e informazioni per il futuro dello sviluppo software",{"altText":435,"config":436},"scheda promozionale per The Source",{"src":437},"/images/navigation/the-source-promo-card.svg",{"text":439,"config":440},"Leggi le ultime notizie",{"href":441,"dataGaName":442,"dataGaLocation":175},"/it-it/the-source/","the source",{"text":444,"config":445,"lists":447},"Azienda",{"dataNavLevelOne":446},"company",[448],{"items":449},[450,455,461,463,468,473,478,483,488,493,498],{"text":451,"config":452},"Informazioni",{"href":453,"dataGaName":454,"dataGaLocation":175},"/it-it/company/","about",{"text":456,"config":457,"footerGa":460},"Opportunità di lavoro",{"href":458,"dataGaName":459,"dataGaLocation":175},"/jobs/","jobs",{"dataGaName":459},{"text":421,"config":462},{"href":423,"dataGaName":424,"dataGaLocation":175},{"text":464,"config":465},"Leadership",{"href":466,"dataGaName":467,"dataGaLocation":175},"/company/team/e-group/","leadership",{"text":469,"config":470},"Team",{"href":471,"dataGaName":472,"dataGaLocation":175},"/company/team/","team",{"text":474,"config":475},"Manuale",{"href":476,"dataGaName":477,"dataGaLocation":175},"https://handbook.gitlab.com/","handbook",{"text":479,"config":480},"Rapporti con gli investitori",{"href":481,"dataGaName":482,"dataGaLocation":175},"https://ir.gitlab.com/","investor relations",{"text":484,"config":485},"Trust Center",{"href":486,"dataGaName":487,"dataGaLocation":175},"/it-it/security/","trust center",{"text":489,"config":490},"AI Transparency Center",{"href":491,"dataGaName":492,"dataGaLocation":175},"/it-it/ai-transparency-center/","ai transparency center",{"text":494,"config":495},"Newsletter",{"href":496,"dataGaName":497,"dataGaLocation":175},"/company/contact/","newsletter",{"text":499,"config":500},"Rassegna stampa",{"href":501,"dataGaName":502,"dataGaLocation":175},"/press/","press",{"text":504,"config":505,"lists":506},"Contattaci",{"dataNavLevelOne":446},[507],{"items":508},[509,512,517],{"text":182,"config":510},{"href":184,"dataGaName":511,"dataGaLocation":175},"talk to sales",{"text":513,"config":514},"Richiedi assistenza",{"href":515,"dataGaName":516,"dataGaLocation":175},"/support/","get help",{"text":518,"config":519},"Portale clienti",{"href":520,"dataGaName":521,"dataGaLocation":175},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":523,"login":524,"suggestions":531},"Chiudi",{"text":525,"link":526},"Per cercare repository e progetti, accedi a",{"text":527,"config":528},"gitlab.com",{"href":189,"dataGaName":529,"dataGaLocation":530},"search login","search",{"text":532,"default":533},"Suggerimenti",[534,537,542,544,549,554],{"text":204,"config":535},{"href":209,"dataGaName":536,"dataGaLocation":530},"GitLab Duo (AI)",{"text":538,"config":539},"Suggerimenti di codice (IA)",{"href":540,"dataGaName":541,"dataGaLocation":530},"/it-it/solutions/code-suggestions/","Code Suggestions (AI)",{"text":255,"config":543},{"href":257,"dataGaName":255,"dataGaLocation":530},{"text":545,"config":546},"GitLab su AWS",{"href":547,"dataGaName":548,"dataGaLocation":530},"/it-it/partners/technology-partners/aws/","GitLab on AWS",{"text":550,"config":551},"GitLab su Google Cloud",{"href":552,"dataGaName":553,"dataGaLocation":530},"/it-it/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":555,"config":556},"Perché scegliere GitLab?",{"href":216,"dataGaName":557,"dataGaLocation":530},"Why GitLab?",{"freeTrial":559,"mobileIcon":564,"desktopIcon":569},{"text":560,"config":561},"Inizia la prova gratuita",{"href":562,"dataGaName":180,"dataGaLocation":563},"https://gitlab.com/-/trials/new/","nav",{"altText":565,"config":566},"Icona di GitLab",{"src":567,"dataGaName":568,"dataGaLocation":563},"/images/brand/gitlab-logo-tanuki.svg","gitlab icon",{"altText":565,"config":570},{"src":571,"dataGaName":568,"dataGaLocation":563},"/images/brand/gitlab-logo-type.svg",{"freeTrial":573,"mobileIcon":577,"desktopIcon":579},{"text":574,"config":575},"Scopri di più su GitLab Duo",{"href":209,"dataGaName":576,"dataGaLocation":563},"gitlab duo",{"altText":565,"config":578},{"src":567,"dataGaName":568,"dataGaLocation":563},{"altText":565,"config":580},{"src":571,"dataGaName":568,"dataGaLocation":563},"content:shared:it-it:main-navigation.yml","Main Navigation","shared/it-it/main-navigation.yml","shared/it-it/main-navigation",{"_path":586,"_dir":169,"_draft":6,"_partial":6,"_locale":7,"title":587,"button":588,"config":592,"_id":594,"_type":162,"_source":163,"_file":595,"_stem":596,"_extension":166},"/shared/it-it/banner","La GitLab Duo Agent Platform è ora in beta pubblica!",{"text":147,"config":589},{"href":590,"dataGaName":591,"dataGaLocation":175},"/it-it/gitlab-duo/agent-platform/","duo banner",{"layout":593},"release","content:shared:it-it:banner.yml","shared/it-it/banner.yml","shared/it-it/banner",{"_path":598,"_dir":169,"_draft":6,"_partial":6,"_locale":7,"data":599,"_id":801,"_type":162,"title":802,"_source":163,"_file":803,"_stem":804,"_extension":166},"/shared/it-it/main-footer",{"text":600,"source":601,"edit":607,"contribute":612,"config":617,"items":622,"minimal":793},"Git è un marchio di Software Freedom Conservancy e l'uso del termine \"GitLab\" è regolato da un accordo di licenza",{"text":602,"config":603},"Visualizza origine pagina",{"href":604,"dataGaName":605,"dataGaLocation":606},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":608,"config":609},"Modifica questa pagina",{"href":610,"dataGaName":611,"dataGaLocation":606},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":613,"config":614},"Contribuisci",{"href":615,"dataGaName":616,"dataGaLocation":606},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":618,"facebook":619,"youtube":620,"linkedin":621},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[623,646,700,730,764],{"title":193,"links":624,"subMenu":629},[625],{"text":626,"config":627},"Piattaforma DevSecOps",{"href":202,"dataGaName":628,"dataGaLocation":606},"devsecops platform",[630],{"title":334,"links":631},[632,636,641],{"text":633,"config":634},"Visualizza i piani",{"href":336,"dataGaName":635,"dataGaLocation":606},"view plans",{"text":637,"config":638},"Perché passare a Premium?",{"href":639,"dataGaName":640,"dataGaLocation":606},"/it-it/pricing/premium/","why premium",{"text":642,"config":643},"Perché passare a Ultimate?",{"href":644,"dataGaName":645,"dataGaLocation":606},"/it-it/pricing/ultimate/","why ultimate",{"title":647,"links":648},"Soluzioni",[649,654,657,659,664,669,673,676,679,684,686,688,690,695],{"text":650,"config":651},"Trasformazione digitale",{"href":652,"dataGaName":653,"dataGaLocation":606},"/it-it/topics/digital-transformation/","digital transformation",{"text":280,"config":655},{"href":275,"dataGaName":656,"dataGaLocation":606},"security & compliance",{"text":267,"config":658},{"href":251,"dataGaName":252,"dataGaLocation":606},{"text":660,"config":661},"Sviluppo Agile",{"href":662,"dataGaName":663,"dataGaLocation":606},"/it-it/solutions/agile-delivery/","agile delivery",{"text":665,"config":666},"Trasformazione cloud",{"href":667,"dataGaName":668,"dataGaLocation":606},"/it-it/topics/cloud-native/","cloud transformation",{"text":670,"config":671},"SCM",{"href":149,"dataGaName":672,"dataGaLocation":606},"source code management",{"text":255,"config":674},{"href":257,"dataGaName":675,"dataGaLocation":606},"continuous integration & delivery",{"text":306,"config":677},{"href":308,"dataGaName":678,"dataGaLocation":606},"value stream management",{"text":680,"config":681},"GitOps",{"href":682,"dataGaName":683,"dataGaLocation":606},"/it-it/solutions/gitops/","gitops",{"text":319,"config":685},{"href":321,"dataGaName":322,"dataGaLocation":606},{"text":324,"config":687},{"href":326,"dataGaName":327,"dataGaLocation":606},{"text":329,"config":689},{"href":331,"dataGaName":332,"dataGaLocation":606},{"text":691,"config":692},"Istruzione",{"href":693,"dataGaName":694,"dataGaLocation":606},"/it-it/solutions/education/","education",{"text":696,"config":697},"Servizi finanziari",{"href":698,"dataGaName":699,"dataGaLocation":606},"/it-it/solutions/finance/","financial services",{"title":339,"links":701},[702,704,706,708,711,713,716,718,720,722,724,726,728],{"text":350,"config":703},{"href":352,"dataGaName":353,"dataGaLocation":606},{"text":355,"config":705},{"href":357,"dataGaName":358,"dataGaLocation":606},{"text":360,"config":707},{"href":362,"dataGaName":363,"dataGaLocation":606},{"text":365,"config":709},{"href":367,"dataGaName":710,"dataGaLocation":606},"docs",{"text":388,"config":712},{"href":390,"dataGaName":391,"dataGaLocation":606},{"text":383,"config":714},{"href":715,"dataGaName":386,"dataGaLocation":606},"/customers/",{"text":393,"config":717},{"href":395,"dataGaName":396,"dataGaLocation":606},{"text":406,"config":719},{"href":408,"dataGaName":409,"dataGaLocation":606},{"text":398,"config":721},{"href":400,"dataGaName":401,"dataGaLocation":606},{"text":411,"config":723},{"href":413,"dataGaName":414,"dataGaLocation":606},{"text":416,"config":725},{"href":418,"dataGaName":419,"dataGaLocation":606},{"text":421,"config":727},{"href":423,"dataGaName":424,"dataGaLocation":606},{"text":426,"config":729},{"href":428,"dataGaName":429,"dataGaLocation":606},{"title":444,"links":731},[732,734,736,738,740,742,744,748,753,755,757,759],{"text":451,"config":733},{"href":453,"dataGaName":446,"dataGaLocation":606},{"text":456,"config":735},{"href":458,"dataGaName":459,"dataGaLocation":606},{"text":464,"config":737},{"href":466,"dataGaName":467,"dataGaLocation":606},{"text":469,"config":739},{"href":471,"dataGaName":472,"dataGaLocation":606},{"text":474,"config":741},{"href":476,"dataGaName":477,"dataGaLocation":606},{"text":479,"config":743},{"href":481,"dataGaName":482,"dataGaLocation":606},{"text":745,"config":746},"Sustainability",{"href":747,"dataGaName":745,"dataGaLocation":606},"/sustainability/",{"text":749,"config":750},"Diversità, inclusione e appartenenza (DIB)",{"href":751,"dataGaName":752,"dataGaLocation":606},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":484,"config":754},{"href":486,"dataGaName":487,"dataGaLocation":606},{"text":494,"config":756},{"href":496,"dataGaName":497,"dataGaLocation":606},{"text":499,"config":758},{"href":501,"dataGaName":502,"dataGaLocation":606},{"text":760,"config":761},"Dichiarazione di trasparenza sulla schiavitù moderna",{"href":762,"dataGaName":763,"dataGaLocation":606},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":504,"links":765},[766,769,771,773,778,783,788],{"text":767,"config":768},"Contatta un esperto",{"href":184,"dataGaName":185,"dataGaLocation":606},{"text":513,"config":770},{"href":515,"dataGaName":516,"dataGaLocation":606},{"text":518,"config":772},{"href":520,"dataGaName":521,"dataGaLocation":606},{"text":774,"config":775},"Stato",{"href":776,"dataGaName":777,"dataGaLocation":606},"https://status.gitlab.com/","status",{"text":779,"config":780},"Termini di utilizzo",{"href":781,"dataGaName":782,"dataGaLocation":606},"/terms/","terms of use",{"text":784,"config":785},"Informativa sulla privacy",{"href":786,"dataGaName":787,"dataGaLocation":606},"/it-it/privacy/","privacy statement",{"text":789,"config":790},"Preferenze dei cookie",{"dataGaName":791,"dataGaLocation":606,"id":792,"isOneTrustButton":237},"cookie preferences","ot-sdk-btn",{"items":794},[795,797,799],{"text":779,"config":796},{"href":781,"dataGaName":782,"dataGaLocation":606},{"text":784,"config":798},{"href":786,"dataGaName":787,"dataGaLocation":606},{"text":789,"config":800},{"dataGaName":791,"dataGaLocation":606,"id":792,"isOneTrustButton":237},"content:shared:it-it:main-footer.yml","Main Footer","shared/it-it/main-footer.yml","shared/it-it/main-footer",{"_path":806,"_dir":169,"_draft":6,"_partial":6,"_locale":7,"header":807,"eyebrow":808,"blurb":809,"button":810,"secondaryButton":814,"_id":816,"_type":162,"title":817,"_source":163,"_file":818,"_stem":819,"_extension":166},"/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":177,"config":811},{"href":812,"dataGaName":180,"dataGaLocation":813},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":182,"config":815},{"href":184,"dataGaName":185,"dataGaLocation":813},"content:shared:it-it:next-steps.yml","Next Steps","shared/it-it/next-steps.yml","shared/it-it/next-steps",1753981692082]