Differenze tra le versioni di "Struttura Repository Git"

Da WikiSitech.
Vai alla navigazioneVai alla ricerca
m
Riga 22: Riga 22:
 
# modificato significa che il file è stato modificato, ma non è ancora stato committato nel database.  
 
# modificato significa che il file è stato modificato, ma non è ancora stato committato nel database.  
 
# staged significa che hai contrassegnato un file, modificato nella versione corrente, perché venga inserito nello snapshot alla prossima commit.
 
# staged significa che hai contrassegnato un file, modificato nella versione corrente, perché venga inserito nello snapshot alla prossima commit.
 +
  
 
==Branching==
 
==Branching==

Versione delle 17:19, 7 apr 2014

Un repository Git è essenzialmente una cartella sul disco locale, contenente la working directory e la cartella metadata.

La cartella metadata, è una sottocartella con nome .git. Contiene il repository allo stato attuale, comprese tutte le info relative ai commit, history, ecc..

La working directory contiene i file correntemente scaricati (checked out) sulla macchina locale dello sviluppatore, e questi sono i file sui quali si lavora fisicamente.

Un caso a parte è un repository bare, ovvero un repository nel quale risiedono solo i metadata, senza le copie dei file sulle quali si lavora.


Ambiente di lavoro

La tua copia locale del repository è composta da tre "alberi" mantenuti da git

  • Working dir o directory di lavoro che contiene i file appartenenti alla versione corrente del progetto sulla quale l’utente sta lavorando.
  • Index o Stage che contiene i file in transito, cioè quelli candidati ad essere committati.
  • Head che contiene gli ultimi file committati.

GitWorkflow.png


I tuoi file in Git possono essere in tre stati: committed, modified e staged.

  1. committato significa che il file è al sicuro nel database locale.
  2. modificato significa che il file è stato modificato, ma non è ancora stato committato nel database.
  3. staged significa che hai contrassegnato un file, modificato nella versione corrente, perché venga inserito nello snapshot alla prossima commit.


Branching

I branch ('ramificazioni') sono utilizzati per sviluppare features che sono isolate l'una dall'altra. Il branch master è quello di default quando crei un repository.

Puoi usare altri branch per lo sviluppo ed infine incorporarli ('merge') nel master branch una volta completati.