INTRODUZIONE A
GIT e GITLAB
Yefry Figueroa - IT Consultant
2018
TOPICS ◼ Cosa è un sistema di controllo di versioni?
◼ Cosa è GIT?
◼ Come funziona GIT?
◼ Commit, Repository, Branch
◼ Gitlab: Open-Source GitHub
◼ Gitlab Cloud e Gitlab Self-Hosted
◼ Overview Demo
www.figueroa.it
WEBINAR - Introduzione a GitLab
SISTEMA DI CONTROLLO DI VERSIONE
• Un sistema che tiene traccia delle tue modifiche
• Permette lo sviluppo collaborativo
• Ti permette di sapere chi ha fatto cosa e quando
• Ti consente di annullare qualsiasi modifica apportata e tornare a uno stato precedente
www.figueroa.it
WEBINAR - Introduzione a GitLab
GIT È UN SISTEMA DI CONTROLLO
DI VERSIONE DISTRIBUITO
GIT
• Creato nel 2005 da Linus Torvalds, il creatore del kernel Linux
• Gratis e open source
• Veloce e sicuro perché è un sistema distribuito
• Ottimo supporto allo sviluppo non-lineare
• Portabilità: funziona su Mac, Linux e Windows
• Capacità di gestire, in modo efficiente, grandi progetti
www.figueroa.it
WEBINAR - Introduzione a GitLab
COME FUNZIONA GIT?
SNAPSHOT
• E’ il modo in cui git mantiene traccia della cronologia del tuo codice
• Essenzialmente registra lo stato attuale di tutti i file in un dato momento
• Decidi tu quando creare uno snapshot e su quali file
• Hai sempre la possibilità di andare indietro a leggere uno snapshot
www.figueroa.it
WEBINAR - Introduzione a GitLab
COMMIT
• E’ l’azione con la quale creiamo uno snapshot
• I commit rappresentano il modo in cui si ‘salvano’ le modifiche fatte al codice
www.figueroa.it
WEBINAR - Introduzione a GitLab
REPOSITORY
• E’ una collezione di tutti i file, la loro cronologia e l’history dei commit
• Può risiedere su una macchina locale o su un server remoto come GitLab
• Principali funzionalità:
• Init: inizializza un nuovo repository all’interno della cartella corrente
• Clone: clona un repository git esistente dal server remoto
• Pull: scarica dati da un repository remoto
• Push: invia branch e dati ad un repository remoto
www.figueroa.it
WEBINAR - Introduzione a GitLab
BRANCH
• Tutti i commit su git risiedono su qualche branch
• Possono esserci tanti branch in un’unico repository
• Il branch principale in un progetto è chiamato per default ‘master’
www.figueroa.it
WEBINAR - Introduzione a GitLab
QUINDI:
una serie di commit collegati tra loro
risiedono su uno o più branch
all’interno di un repository
www.figueroa.it
WEBINAR - Introduzione a GitLab
COSA E’ GITLAB?
GITLAB
◼ Piattaforma basata su GIT
◼ Facilita lo sviluppo collaborativo
◼ Open-Source GitHub
◼ GitLab semplifica il lavoro distribuito
◼ E’ disponibile in due versioni:
◼ Self-hosted
◼ SaaS (gitlab.com)
◼ Nessun limite dei repository privati
◼ Nessun limite di collaboratori
◼ DevOps focus
◼ Continuous Integration
◼ Container Registry
◼ Continuous Delivery
◼ Mattermost (comunicazione del team)
GITLAB
DEMO
DOMANDE?

Introduzione a Git e GitLab

  • 1.
    INTRODUZIONE A GIT eGITLAB Yefry Figueroa - IT Consultant 2018
  • 2.
    TOPICS ◼ Cosaè un sistema di controllo di versioni? ◼ Cosa è GIT? ◼ Come funziona GIT? ◼ Commit, Repository, Branch ◼ Gitlab: Open-Source GitHub ◼ Gitlab Cloud e Gitlab Self-Hosted ◼ Overview Demo www.figueroa.it WEBINAR - Introduzione a GitLab
  • 3.
    SISTEMA DI CONTROLLODI VERSIONE • Un sistema che tiene traccia delle tue modifiche • Permette lo sviluppo collaborativo • Ti permette di sapere chi ha fatto cosa e quando • Ti consente di annullare qualsiasi modifica apportata e tornare a uno stato precedente www.figueroa.it WEBINAR - Introduzione a GitLab
  • 4.
    GIT È UNSISTEMA DI CONTROLLO DI VERSIONE DISTRIBUITO
  • 5.
    GIT • Creato nel2005 da Linus Torvalds, il creatore del kernel Linux • Gratis e open source • Veloce e sicuro perché è un sistema distribuito • Ottimo supporto allo sviluppo non-lineare • Portabilità: funziona su Mac, Linux e Windows • Capacità di gestire, in modo efficiente, grandi progetti www.figueroa.it WEBINAR - Introduzione a GitLab
  • 6.
  • 7.
    SNAPSHOT • E’ ilmodo in cui git mantiene traccia della cronologia del tuo codice • Essenzialmente registra lo stato attuale di tutti i file in un dato momento • Decidi tu quando creare uno snapshot e su quali file • Hai sempre la possibilità di andare indietro a leggere uno snapshot www.figueroa.it WEBINAR - Introduzione a GitLab
  • 8.
    COMMIT • E’ l’azionecon la quale creiamo uno snapshot • I commit rappresentano il modo in cui si ‘salvano’ le modifiche fatte al codice www.figueroa.it WEBINAR - Introduzione a GitLab
  • 9.
    REPOSITORY • E’ unacollezione di tutti i file, la loro cronologia e l’history dei commit • Può risiedere su una macchina locale o su un server remoto come GitLab • Principali funzionalità: • Init: inizializza un nuovo repository all’interno della cartella corrente • Clone: clona un repository git esistente dal server remoto • Pull: scarica dati da un repository remoto • Push: invia branch e dati ad un repository remoto www.figueroa.it WEBINAR - Introduzione a GitLab
  • 10.
    BRANCH • Tutti icommit su git risiedono su qualche branch • Possono esserci tanti branch in un’unico repository • Il branch principale in un progetto è chiamato per default ‘master’ www.figueroa.it WEBINAR - Introduzione a GitLab
  • 11.
    QUINDI: una serie dicommit collegati tra loro risiedono su uno o più branch all’interno di un repository www.figueroa.it WEBINAR - Introduzione a GitLab
  • 12.
  • 13.
    GITLAB ◼ Piattaforma basatasu GIT ◼ Facilita lo sviluppo collaborativo ◼ Open-Source GitHub ◼ GitLab semplifica il lavoro distribuito ◼ E’ disponibile in due versioni: ◼ Self-hosted ◼ SaaS (gitlab.com)
  • 14.
    ◼ Nessun limitedei repository privati ◼ Nessun limite di collaboratori ◼ DevOps focus ◼ Continuous Integration ◼ Container Registry ◼ Continuous Delivery ◼ Mattermost (comunicazione del team) GITLAB
  • 15.
  • 16.