Git non è GitHub

Il titolo sembra veramente stupido, però in realtà non lo è. Da quando Tfs supporta nativamente Git come Source Control, ovvero all’incirca da Gennaio 2013 per Visual Studio Online e dalla versione 2013 per le installazioni on-premise, si è generata un po di confusione.

Quello che accade spesso è questo, alla fatidica domanda: che source control pensate di usare visto che avete installato la versione 2013 di TFS ed avete quindi anche l’opzione Git?, si ottengono talvolta risposte che fanno capire come alcune (e non sono poche) persone confondono Git con GitHub. Eccovi alcuni esempi

  • Ma poi TFS come gestisce l’autenticazione con Git? Debbo farmi un account anche su Git?
    Ma git non è solamente per open source e poi bisogna pagare per avere il repository privato?
  • Non possiamo usare soluzioni in cui il sorgente sia sul Cloud, per cui Git è fuori discussione.

Queste risposte fanno capire come l’interlocutore sia convinto che quando si parli di Git si parli di Github, e che quindi il supporto TFS a Git sia in qualche modo collegato al fatto che Tfs invii i sorgenti su GitHub. A questo punto vorrei fare una doverosa precisazione.

Git è il source control distribuito più famoso, ma è comunque un source control che, alla pari di Mercurial, Subversion, Source Safe e a TFVC (il source control nativo di TFS), può essere installato su più sistemi (Windows, Linux, …) ed utilizzato da vari client. Naturalmente come per gli altri source control, sono presenti molti siti in rete che offrono repository Git online (gratuiti o meno). Sicuramente tra tutti GitHub è il più famoso, è il più usato ed il piu conosciuto, ma non è il solo. Github è infatti quindi un host che vi fornisce gratuitamente o a pagamento dei repository Git on the cloud, ma potreste anche scegliere tra: (lista non esaustiva)

Visual Studio Online: http://www.visualstudio.com/ 
Bitbucket: https://bitbucket.org
Codeplex: http://www.codeplex.com/
………

E naturalmente esistono prodotti software on-premise che si avvalgono di Git come source control per la gestione dell’ALM, come TFS 2013. Quando in TFS2013 (sia esso VSO oppure on-premise) scegliete Git come source control, significa che i repositories git associati al Team Project sono contenuti nei database di TFS, sono gestiti da TFS utilizzando le normali (e standard) librerie lib2git e non hanno nessuna connessione con GitHub o con qualsiasi altro servizio che offre hosting Git che voi possiate conoscere. Tutte le informazioni sono, come per i sorgenti che utilizzano TFVC, memorizzate nei database SQL utilizzati da TFS.

Gian Maria.

Comments are closed.