login LOGIN
CHIUDI chiudi
Il mio profilo

mostra
Hai dimenticato la password?
Inserisci l'indirizzo email di registrazione per reimpostare la password.
Segui le istruzioni che ti abbiamo inviato per posta elettronica.

GitHub, le migliori alternative sul web

GitHub è la piattaforma più utilizzata per la condivisione dei progetti di sviluppo software. Esistono, però, delle valide alternative: ecco le migliori

github

GitHub è la più famosa piattaforma di hosting per progetti software open source. Nata nel 2007 a San Francisco, in appena un anno ha raccolto sui suoi server oltre 46 mila progetti. Nel 2018 è stata comprata da Microsoft per 7,5 miliardi di dollari, la cifra più alta pagata dall'azienda per una acquisizione dopo i 26 miliardi spesi per comprare Linkedin nel 2016. Oggi GitHub è ancora la prima scelta per gli sviluppatori che vogliono pubblicare i loro progetti open source perché offre diversi strumenti collaborativi che permettono agli utenti di contribuire allo sviluppo del software tramite il bug tracking, le feature request, i semplici commenti e molto altro.

Ma GitHub non è la sola piattaforma dove pubblicare, o cercare, software open source al quale contribuire: ce ne sono diverse altre, alcune più e alcune meno conosciute. Ecco le principali, tutte basate su Git che è un software di controllo versione distribuito e decentralizzato che tiene traccia di tutte le modifiche apportate ad un codice. Git, per chi non lo sapesse, è stato inventato nel 2005 da Linus Torvalds, il padre del sistema operativo Linux.

GitLab

L'alternativa più nota a GitHub è senza dubbio GitLab. È anche la piattaforma più simile, per impostazione e strumenti disponibili, ma non ne è l'esatto clone. È maggiormente focalizzata sullo sviluppo del software con metodo "DevOps", cioè quella metodologia che cerca di mettere in comunicazione/collaborazione chi sviluppa il software e chi gestisce l'infrastruttura IT delle aziende.

GitLab, infatti, si basa soprattutto sui concetti e gli strumenti di Continous Integration (CI) e Continuous Delivery (CD): tutto il codice prodotto dagli sviluppatori viene costantemente fuso in un unico progetto e costantemente pubblicato in modo automatizzato. In più, GitLab ha anche una community version completamente open source il che vuol dire che è possibile portare una piattaforma GitLab autonoma sui propri server, ad uso della propria organizzazione.

BitBucket

BitBucket è la piattaforma alternativa a GitHub sviluppata dalla software house Atlassian, che sviluppa applicazioni per smartworking collaborativo molto famose, come Trello e Jira. Quest'ultima è dedicata agli sviluppatori software ed è perfettamente integrata con BitBucket, il che rende BitBucket uno strumento molto più potente per l'uso in azienda che per le community pubbliche. Ciò non vuol dire, però, che BitBucket non possa essere utilizzato anche per creare repository pubblici.

AWS CodeCommit

AWS CodeCommit è un servizio di repository Git fornito da AWS, cioè Amazon Web Services. Di conseguenza è perfettamente integrato con l'ecosistema AWS, ma rispetto agli standard qualitativi di Amazon è ancora molto indietro. L'interfaccia, infatti, è abbastanza scarna e scomoda da usare. La cosa buona, invece, è l'integrazione con Amazon EC2 (Amazon Elastic Compute Cloud, la piattaforma di cloud computing di Amazon) e con AWS Lambda (la piattaforma di calcolo di Amazon).

CodeCommit dispone di opzioni per l'esecuzione di test prima della distribuzione del codice, come la distribuzione su un server alla volta, metà dei server o tutti contemporaneamente. È possible anche aggiornare direttamente il codice sorgente delle funzioni Lambda.

Le alternative a GitHub senza Git

GitLab, BitBucket e AWS CodeCommit sono le tre alternative più famose a GitHub, ma ce ne sono altre meno note che possono essere prese in considerazione se valutiamo anche le piattaforme che non usano Git come base, ma altri sistemi di controllo versione. Ad esempio Perforce, che è un sistema centralizzato e non decentralizzato (come Git e i suoi derivati). Perforce ha dei grossi limiti a gestire i repository software molto grandi, ma è una buona scelta se si ha la necessità di concedere accessi limitati al software in sviluppo. Per piccoli progetti specifici, non open source, può essere preso in considerazione.

Altre alternative simili sono Team Foundation Version Control (TFVC) di Microsoft, Subversion (confluito in Perforce) e Mercurial (sviluppato di nuovo da Atlassian, la stessa software house di BitBucket).

Hosting privato di un server Git

Infine, tornando a Git, è anche possibile fare un'altra scelta: l'hosting privato di un server Git. GitHub e tutte le sue alternative basate su Git non sono altro che dei frontend basati sul web, delle interfacce di collegamento ad un server che ospita il progetto open source. Nulla ci vieta di farci in casa il server e di trasformarlo in un repository di progetti software, da gestire tramite Git. Il vantaggio è quello di poter concedere o negare l'accesso ai progetti a chi vogliamo, lo svantaggio è che avremo noi la responsabilità della sicurezza e dei backup dei dati ospitati sul server.

A cura di Cultur-e
Segui le ultime notizie sul nostro canale Whatsapp
Immagine principale del blocco
Segui le ultime notizie sul nostro canale Whatsapp
Fda gratis svg
Iscriviti al canale gratuito

Iscriviti
all'area personale

Per ricevere Newsletter, scaricare eBook, creare playlist vocali e accedere ai corsi della Fastweb Digital Academy a te dedicati.