Git vs GitHub: scopri la verità in 3 passaggi 🚀
Riepilogo chiave
- GitHub è una piattaforma per l'hosting e la condivisione di codice, che offre hosting web gratuito e funzionalità social.
- Git è un sistema di controllo delle versioni che tiene traccia delle modifiche al codice e costituisce la base tecnologica di GitHub.
- Esistono altri host Git come GitLab e Bitbucket, ma GitHub è il più utilizzato e riconosciuto a livello mondiale.
GitHub è così popolare che spesso viene confuso con Git, ma sono concetti diversi. Esistono alternative per entrambi, anche se nessuna è diffusa quanto GitHub.
Che cos'è GitHub?
GitHub è un'applicazione web che consente agli sviluppatori di ospitare, condividere e collaborare a progetti software. Molti progetti sono open source e consentono contributi pubblici. GitHub promuove la community con account utente, pull request per il monitoraggio delle modifiche, monitoraggio dei problemi e wiki per la documentazione.

Lanciato nel 2008 e acquisito da Microsoft nel 2018, GitHub è diventato il punto di riferimento principale per molti progetti popolari. La funzionalità GitHub Pages offre hosting web gratuito per i progetti, consentendo la creazione di un sito completamente gratuito sulla piattaforma. Inoltre, è possibile modificare direttamente su GitHub o clonare i repository per lavorare in locale.
GitHub utilizza Git come tecnologia di base per monitorare le modifiche nei progetti.
Che cos'è Git?
Git è un sistema di controllo di versione distribuito (VCS) creato nel 2005 da Linus Torvalds, sviluppatore del kernel Linux. È un software libero che registra le modifiche al codice nel tempo, memorizzando le differenze tra le versioni per un numero illimitato di versioni. Un repository Git è una raccolta organizzata dei file di un progetto.
I programmatori spesso usano Git sulla riga di comando con il comando ingenuo, che offre numerose opzioni e sottocomandi per la gestione di repository di basso livello.

Ad esempio, per convertire una cartella normale in un repository Git si usa:
inizializzareIl flusso usuale prevede la modifica dei file e quindi l'utilizzo di comandi per salvare le versioni:
git add file.c git commit -m "Corretto un bug nel processo di checkout"È possibile clonare un progetto GitHub, lavorare localmente e inviare le modifiche al repository remoto. Questo processo funziona allo stesso modo con qualsiasi repository Git, sia su GitHub che su altri servizi o server locali.
Se la riga di comando non fa per te, ci sono client Git con un'interfaccia grafica, ad esempio

Altri clienti popolari sono Forchetta, Sourcetree E GitKrakenPuoi provarne diverse per trovare quella che ti piace di più.
Dovresti usare un client Git grafico?
Git può risultare complicato per i principianti.
Devo usarli entrambi o solo uno?
È possibile scaricare software da GitHub senza creare un account. La maggior parte dei progetti offre file eseguibili nella sezione Releases, oppure è possibile clonare repository pubblici per ottenere il codice completo.

Se vuoi che un progetto rimanga aperto al pubblico, GitHub è la soluzione ideale per ospitarlo, ma esistono anche opzioni come GitLab e Bitbucket che offrono funzionalità simili.
Poiché tutti usano Git, spostare repository o utilizzare più host è semplice. Tuttavia, le funzionalità esclusive di GitHub, come il tracciamento dei problemi o le wiki, sono vincolate alla piattaforma. Per evitare vincoli, è possibile limitare l'utilizzo di queste funzionalità.
GitHub offre una solida API per accedere ai tuoi dati. Ad esempio, puoi esportare issue e wiki (che sono repository Git) per migrarli su altre piattaforme, se lo desideri.
Cos'è un'API e come la usano gli sviluppatori?
Probabilmente hai sentito parlare di "API".
Se stai cercando un altro sistema di controllo delle versioni, Fagiolo magico supporta Git e anche Subversion (SVN).
Esistono altre alternative a Git, come Mercurial, sebbene siano meno diffuse e consigliate solo per casi molto specifici. Per la maggior parte dei nuovi progetti, Git è l'opzione migliore e l'integrazione di GitHub con Git ne semplifica notevolmente l'utilizzo.




















