[GIT] Creare un Branch

Rispondi
Roberto
Amministratore
Messaggi: 160
Iscritto il: 19/12/2009, 19:30

[GIT] Creare un Branch

Messaggio da Roberto »

GIT e' un software di versioning utile per tenere traccia del lavoro svolto dagli sviluppatori di un progetto.

GIT e' organizzato in Repository. Un repository puo' essere visto come un contenitore in cui e' salvato il progetto a cui si sta lavorando. Generalmente la prima operazione da fare quando si inizia a lavorare a un progetto e' "Clonare il Repository", operazione che puo' essere vista come la configurazione iniziale del progetto sul proprio computer.

Utilizzando la shell testuale GIT BASH, possiamo clonare il progetto con il comando:

Codice: Seleziona tutto

$ git clone <url>
Questo comando crea sul computer una directory con all'interno tutti i file del progetto aggiornati alla versione piu' recente e inizializzera' una directory .git al suo interno.

In Git un progetto e' articolato in branch che hanno un branch ”padre” in comune chiamato master, e' possibile posizionarsi sul branch master attraverso il seguente comando:

Codice: Seleziona tutto

$ git checkout master
Se volessimo verificare se qualcuno ha effettuato un aggiornamento al progetto possiamo eseguire il seguente comando:

Codice: Seleziona tutto

$ git fetch origin
E' importante specificare che il comando git fetch scarica solo i dati nel tuo repository locale, non li unisce automaticamente a nessuno dei tuoi lavori ne' modifica cio' su cui stai lavorando.

Infine se volessimo reimpostare copia del nostro progetto locale con quella presente su master (Discard):

Codice: Seleziona tutto

$ git reset --hard origin/master
Spesso, per tenere traccia dello sviluppo/modifica di una data funzionalita' in un progetto, e' di uso comune creare un branch a parte a essa dedicato. Per farlo, si esegue tale comando:

Codice: Seleziona tutto

$ git checkout -b new-feature
Questo comando crea un branch chiamato “new-feature” copiato da master, e il flag -b fa in modo che Git crei il branch se non esiste gia'.
Rispondi