Git in 5 minuti

22
PHP USER GROUP PALERMO - 18/01/2016 D.Mondello, F. Pileri ,M. Vetro

Transcript of Git in 5 minuti

Page 1: Git in 5 minuti

PHP USER GROUP PALERMO - 18/01/2016

D.Mondello, F. Pileri ,M. Vetro

Page 2: Git in 5 minuti

Presentazione

● Definizione VCS

● Breve storia

● Funzionamento

● Comandi principali

● Conclusioni

Page 3: Git in 5 minuti
Page 4: Git in 5 minuti

Cosa è GIT - Version Control System (VCS)● Cosa è cambiato nei file

● Chi ha fatto i cambiamenti

● Quando sono state applicati

● Come i file sono cambiati

● Perchè sono stati cambiati (si spera)

Page 5: Git in 5 minuti

Breve storia● creato da Linus Torvalds nel 2005

Page 6: Git in 5 minuti

DVCS

Page 7: Git in 5 minuti

Perché GIT● Gratuito & open source

● Completamente distribuito

● Veloce e sicuro

● Design semplice e diffuso

● Capacità di gestire, in modo efficiente

(velocità e dimensione dei dati), grandi

progetti come il kernel Linux

Page 8: Git in 5 minuti

Funzionamentodi Git

Page 9: Git in 5 minuti

Perché GIT● git memorizza sempre i file nella loro interezza

● il commit è uno dei tanti oggetti conservati dentro il database chiave/valore di git. È un contenitore di tanti puntatori ad altri oggetti del database: tree e dei blob

● ogni oggetto commit ha un puntatore al commit padre da cui deriva● l’index è uno spazio di appoggio nel quale puoi costruire, a colpi di git add, il nuovo commit

Page 10: Git in 5 minuti

Comandiprincipali

Page 11: Git in 5 minuti

Iniziaregit init

git init newrepository

git clone https://github.com/name-of-repo

Page 12: Git in 5 minuti

myproject/.git/

Page 13: Git in 5 minuti

aggiungere file staginggit add myfile.html

git add css/*

git remove hello.txt

Page 14: Git in 5 minuti

committing changesgit commit -m “Aggiunto nuovo myfile.html”

git log

history

Page 15: Git in 5 minuti

.gitignore*.temp

code.txt

.gitkeep

Page 16: Git in 5 minuti

branching1. creare branch

2. posizionarsi nel nuovo branch

3. lavorare nel nuovo branch

git branch child-branch

git checkout child-branch

Page 17: Git in 5 minuti

merging1. posizionarsi branch padre

2. unire branch figlio con il padre

git checkout parent

git merge child-branch

Page 18: Git in 5 minuti

stashgit stash

git stash apply

git stash list

git stash drop {STASH_ID}

Page 19: Git in 5 minuti

invio delle modifichegit push origin master

git pull origin master

developer

developer

developer

sharedrepository

Page 20: Git in 5 minuti

Git WorkFlow: Git-Flow Vs GitLab-Flow

Page 21: Git in 5 minuti

https://try.github.io/Conclusioni

Page 22: Git in 5 minuti

GRAZIE PER L’ATTENZIONE F.Pileri

D.Mondello

M. Vetro