SlideShare una empresa de Scribd logo
1 de 42
CHI HA PAURA DI GITHUB?
CONOSCIAMOLO MEGLIO
Giacoma Allegretta
Studente alla facoltà di Ingegneria Informatica a Bari
Tirocinante presso eMinds
3 anni (quasi) nella community di WordPress
Aiuto per l’organizzazione del gruppo Polyglots
GTE italiano da ottobre 2018
Contributor del progetto Bulk Reject GP
Organizer per WordCamp Bari 2019
@gAllegretta92@g.allegretta /giacoma.allegretta.9
GitHub? Git?
GitHub Git
Terminologia
● GitHub
● Push
● Git
● Repo / Repository
● Fork
● Commit
● Add
● Clone
● Pull
● Merged
● Fetch
● Pull Request
● Issue
● Diff
● Branch
● Master
GitHub
Servizio pubblico di gestione del codice sorgente.
Usato dagli sviluppatori come piattaforma per la condivisione di codice.
GitHub è basato sul sistema Git.
Git
Software di controllo versione distribuito.
Utilizzabile da riga di comando.
Repo / Repository
Equivale alla cartella del progetto, contiene tutti i file e le diverse revisioni.
Il progetto può essere gestito direttamente dal repository e si possono
aprire “discussioni”.
Init oppure Fork ???
Un repository può essere creato da zero (init)
oppure può essere una copia di un repository già esistente (fork).
Markdown (.md)
Linguaggio di markup con una sintassi semplice e progettata per essere
convertita principalmente in HTML.
Nei repo GitHub è usato per formattare file README.
Usare GitHub per creare un nuovo repository
Usare GitHub per “copiare” un repository
Modifica di file nel repository
CREAZIONE FILE
Creazione file
Creazione file
Creazione file
Creazione file
Modifica di file nel repository
CARICAMENTO FILE
Caricamento file
Caricamento file
Pull request
DA USARE NEI REPOSITORY “FORKATI”
(oppure nei branch)
Cos’è un branch?
Immagine presa dal tutorial Atlassian : https://it.atlassian.com/git/tutorials/using-branches
Pull Request
Pull Request
Pull Request
Pull Request ... Merge!
Solo il proprietario del repository può agire!
Merge
Merge
Immagine presa dal tutorial Atlassian : https://it.atlassian.com/git/tutorials/using-branches/git-merge
Lavorare in locale?!?
CERTO, USANDO GIT
RETELOCALE (PC)
Da linea di comando
RETELOCALE (PC)
Copia in locale di un repository già esistente
Repository già creato
Clono il repository
git clone url-repository
Modifico dei file
Confermo le modifiche
git add .
git commit -m “messaggio-commit”
Carico le modifiche
git push
Repository aggiornato
RETELOCALE (PC)
Creazione in locale di un nuovo repository
Il repository potrebbe non
esistere su GitHub.
Creo una cartella che
conterrà il progetto
La inizializzo come repository
git init
Se non esiste, lo creo
Collego il repo locale con uno
in remoto (GitHub)
git remote add origin url-repository
Repository remoto
https://github.com/username/repo-name
RETELOCALE (PC)
Aggiornare il repository locale
Repository remoto già creatoRepository locale già creato
e collegato ad un repository
remoto Il repository viene
aggiornato
Scarico gli aggiornamenti
git pull
Repository remoto
https://github.com/username/repo-name
Verifico se ci sono
aggiornamenti
git status
Per forza da terminale???
NON NECESSARIAMENTE!
● Applicazione GitHub Desktop
● Editor di codice con Git integrato
REAL TIME!!!
Grazie per
l’attenzione!
Se avete domande,
contattatemi pure!
@gAllegretta92@g.allegretta /giacoma.allegretta.9

Más contenido relacionado

Similar a Chi ha paura di Github? Conosciamolo meglio!

Revisionare, tracciare, collaborare. Version control con git
Revisionare, tracciare, collaborare. Version control con gitRevisionare, tracciare, collaborare. Version control con git
Revisionare, tracciare, collaborare. Version control con gitFabio Alessandrelli
 
Introduzione a Git e GitLab
Introduzione a Git e GitLabIntroduzione a Git e GitLab
Introduzione a Git e GitLabYefry Figueroa
 
Git/Continuous Integration/Docker: la terna dello sviluppo moderno.
Git/Continuous Integration/Docker: la terna dello sviluppo moderno.Git/Continuous Integration/Docker: la terna dello sviluppo moderno.
Git/Continuous Integration/Docker: la terna dello sviluppo moderno.Gerardo Di Iorio
 
Migrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a GitMigrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a GitGian Maria Ricci
 
Liferay - Quick Start 1° Episodio
Liferay - Quick Start 1° EpisodioLiferay - Quick Start 1° Episodio
Liferay - Quick Start 1° EpisodioAntonio Musarra
 
Linux Embedded per l'automazione
Linux Embedded per l'automazioneLinux Embedded per l'automazione
Linux Embedded per l'automazioneDaniele Costarella
 
Introduzione a git
Introduzione a gitIntroduzione a git
Introduzione a gitrpanfili
 
Lezione 4 - Pratica - Lavorare in azienda: il teamwork
Lezione 4 - Pratica - Lavorare in azienda: il teamworkLezione 4 - Pratica - Lavorare in azienda: il teamwork
Lezione 4 - Pratica - Lavorare in azienda: il teamworkGiuseppe Cramarossa
 
PLUGIN PER L’UPLOAD MULTIPLO DI FILE IN DOKUWIKI
PLUGIN PER L’UPLOAD MULTIPLO DI FILE IN DOKUWIKIPLUGIN PER L’UPLOAD MULTIPLO DI FILE IN DOKUWIKI
PLUGIN PER L’UPLOAD MULTIPLO DI FILE IN DOKUWIKIguestfe6d06
 
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018Marco Chiesi
 
Closure Visto Da Vicino
Closure Visto Da VicinoClosure Visto Da Vicino
Closure Visto Da Vicinodavide ficano
 
HTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesignerHTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesignerMatteo Magni
 
Enterprise Applications - Angular Day 2018
Enterprise Applications - Angular Day 2018Enterprise Applications - Angular Day 2018
Enterprise Applications - Angular Day 2018Paolo Galfione
 

Similar a Chi ha paura di Github? Conosciamolo meglio! (20)

Git e GitHub
Git e GitHubGit e GitHub
Git e GitHub
 
Revisionare, tracciare, collaborare. Version control con git
Revisionare, tracciare, collaborare. Version control con gitRevisionare, tracciare, collaborare. Version control con git
Revisionare, tracciare, collaborare. Version control con git
 
Introduzione a Git e GitLab
Introduzione a Git e GitLabIntroduzione a Git e GitLab
Introduzione a Git e GitLab
 
Introduzione a Git
Introduzione a GitIntroduzione a Git
Introduzione a Git
 
Git/Continuous Integration/Docker: la terna dello sviluppo moderno.
Git/Continuous Integration/Docker: la terna dello sviluppo moderno.Git/Continuous Integration/Docker: la terna dello sviluppo moderno.
Git/Continuous Integration/Docker: la terna dello sviluppo moderno.
 
GitSlides
GitSlidesGitSlides
GitSlides
 
Migrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a GitMigrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a Git
 
Liferay - Quick Start 1° Episodio
Liferay - Quick Start 1° EpisodioLiferay - Quick Start 1° Episodio
Liferay - Quick Start 1° Episodio
 
Introduzione a Git
Introduzione a GitIntroduzione a Git
Introduzione a Git
 
GIT SOTTO IL COFANO
GIT SOTTO IL COFANOGIT SOTTO IL COFANO
GIT SOTTO IL COFANO
 
Linux Embedded per l'automazione
Linux Embedded per l'automazioneLinux Embedded per l'automazione
Linux Embedded per l'automazione
 
Introduzione a git
Introduzione a gitIntroduzione a git
Introduzione a git
 
Lezione 4 - Pratica - Lavorare in azienda: il teamwork
Lezione 4 - Pratica - Lavorare in azienda: il teamworkLezione 4 - Pratica - Lavorare in azienda: il teamwork
Lezione 4 - Pratica - Lavorare in azienda: il teamwork
 
Git
GitGit
Git
 
PLUGIN PER L’UPLOAD MULTIPLO DI FILE IN DOKUWIKI
PLUGIN PER L’UPLOAD MULTIPLO DI FILE IN DOKUWIKIPLUGIN PER L’UPLOAD MULTIPLO DI FILE IN DOKUWIKI
PLUGIN PER L’UPLOAD MULTIPLO DI FILE IN DOKUWIKI
 
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
 
Emerasoft Git quickstart
Emerasoft Git quickstartEmerasoft Git quickstart
Emerasoft Git quickstart
 
Closure Visto Da Vicino
Closure Visto Da VicinoClosure Visto Da Vicino
Closure Visto Da Vicino
 
HTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesignerHTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesigner
 
Enterprise Applications - Angular Day 2018
Enterprise Applications - Angular Day 2018Enterprise Applications - Angular Day 2018
Enterprise Applications - Angular Day 2018
 

Chi ha paura di Github? Conosciamolo meglio!

Notas del editor

  1. Una linea di sviluppo indipendente, una astrazione del processo di sviluppo. Nuova funzionalità, senza modificare il ramo principale (chiamato master). No codice instabile. Riportare nel ramo principale (master) ->pull request + merge
  2. merge -> combina una sequenza di commit (modifiche) in un unico storico delle modifiche. Può diventare difficoltosa nel caso in cui molte persone lavorano sullo stesso progetto. Conflitto -> più persone modificano la stessa parte di progetto, al merge deve precedere una fase di verifica