Che cos'è GitHub e a cosa serve?
GitHub è un sito web e un servizio che sentiamo entusiasti di tutto il tempo, ma molte persone non capiscono veramente cosa faccia. Vuoi sapere di cosa tratta tutto il borbottio di GitHub? Continuate a leggere per scoprirlo.
Il "Git" in GitHub
Per capire GitHub, devi prima avere una comprensione di Git. Git è un sistema di controllo delle versioni open source che è stato avviato da Linus Trovalds, la stessa persona che ha creato Linux. Git è simile ad altri sistemi di controllo della versione-Subversion, CVS e Mercurial per citarne alcuni.
Quindi, Git è un sistema di controllo della versione, ma cosa significa? Quando gli sviluppatori creano qualcosa (un'app, ad esempio), apportano continue modifiche al codice, rilasciando nuove versioni fino alla e dopo la prima versione ufficiale (non beta).
I sistemi di controllo della versione mantengono dritte queste revisioni, memorizzando le modifiche in un repository centrale. Ciò consente agli sviluppatori di collaborare facilmente, in quanto possono scaricare una nuova versione del software, apportare modifiche e caricare la revisione più recente. Ogni sviluppatore può vedere queste nuove modifiche, scaricarle e contribuire.
Allo stesso modo, le persone che non hanno nulla a che fare con lo sviluppo di un progetto possono ancora scaricare i file e usarli. La maggior parte degli utenti Linux dovrebbe avere familiarità con questo processo, poiché l'uso di Git, Subversion o altri metodi simili è piuttosto comune per il download dei file necessari, specialmente in preparazione per la compilazione di un programma dal codice sorgente (una pratica piuttosto comune per i geek di Linux).
Git è il sistema di controllo delle versioni preferito dalla maggior parte degli sviluppatori, poiché ha molti vantaggi rispetto agli altri sistemi disponibili. Memorizza le modifiche ai file in modo più efficiente e garantisce l'integrità dei file. Se sei interessato a conoscere i dettagli, la pagina Git Basics fornisce una spiegazione approfondita su come funziona Git.
Il "mozzo" in GitHub
Abbiamo stabilito che Git è un sistema di controllo delle versioni, simile ma migliore delle molte alternative disponibili. Quindi, cosa rende GitHub così speciale? Git è uno strumento da riga di comando, ma il centro attorno al quale ruotano tutte le cose che coinvolgono Git è l'hub - GitHub.com - in cui gli sviluppatori archiviano i propri progetti e si collegano con persone che la pensano allo stesso modo.
Esaminiamo alcune delle principali ragioni per cui ai geek piace usare GitHub e impariamo alcuni termini lungo la strada.
deposito
Un repository (solitamente abbreviato in "repo") è un percorso in cui sono memorizzati tutti i file per un particolare progetto. Ogni progetto ha il proprio repository e puoi accedervi con un URL univoco.
Forking a Repo
"Forking" è quando crei un nuovo progetto basato su un altro progetto già esistente. Questa è una caratteristica straordinaria che incoraggia enormemente l'ulteriore sviluppo di programmi e altri progetti. Se trovi un progetto su GitHub a cui vorresti contribuire, puoi dare un fork al repository, apportare le modifiche che desideri e rilasciare il nuovo progetto come nuovo repository. Se il repository originale che hai biforcato per creare il tuo nuovo progetto viene aggiornato, puoi facilmente aggiungere quegli aggiornamenti al tuo fork attuale.
Pull Requests
Hai biforcato un repository, fatto una grande revisione del progetto e vuoi che venga riconosciuto dagli sviluppatori originali, magari incluso nel progetto / repository ufficiale. Puoi farlo creando una richiesta di pull. Gli autori del repository originale possono vedere il tuo lavoro e quindi scegliere se accettarlo o meno nel progetto ufficiale. Ogni volta che si invia una richiesta di pull, GitHub fornisce un mezzo perfetto per te e il manutentore del progetto principale per comunicare.
Social networking
L'aspetto del social networking di GitHub è probabilmente la sua caratteristica più potente, che consente ai progetti di crescere più delle altre funzionalità offerte. Ogni utente su GitHub ha il proprio profilo che si comporta come un riassunto di sorta, mostrando i tuoi lavori passati e i contributi ad altri progetti tramite richieste pull.
Le revisioni dei progetti possono essere discusse pubblicamente, quindi una massa di esperti può contribuire alla conoscenza e collaborare per far avanzare un progetto. Prima dell'avvento di GitHub, gli sviluppatori interessati a contribuire a un progetto di solito dovevano trovare dei mezzi per contattare gli autori, probabilmente via e-mail, e poi convincerli che si possono fidare e il loro contributo è legittimo.
changelog
Quando più persone collaborano a un progetto, è difficile tenere traccia delle revisioni, chi ha cambiato cosa, quando e dove sono archiviati. GitHub si prende cura di questo problema tenendo traccia di tutte le modifiche che sono state inviate al repository.
GitHub non è solo per gli sviluppatori
Tutto questo parlare di come GitHub è l'ideale per i programmatori potrebbe farti credere che sono gli unici a trovarlo utile. Sebbene sia molto meno comune, puoi effettivamente utilizzare GitHub per qualsiasi tipo di file. Ad esempio, se si dispone di un team che modifica costantemente un documento Word, è possibile utilizzare GitHub come sistema di controllo della versione. Questa pratica non è comune, poiché nella maggior parte dei casi ci sono alternative migliori, ma è qualcosa da tenere a mente.
Ora che sai cos'è GitHub, sei pronto per iniziare? Vai su GitHub.com e assicurati di controllare le loro pagine di aiuto dopo esserti registrato.