Latest web development tutorials

zona di lavoro Git, area di gestione temporanea e repository

concetto di base

Abbiamo prima capire l'area di lavoro sotto Git, un'area di memorizzazione temporanea e il concetto di repository

  • Area di lavoro: che si può vedere nel catalogo computer.
  • Area temporanea: inglese chiamato stadio, o di un indice. In genere memorizzati nel file "directory git" index (.git / index), per cui a volte chiamato l'indice di un'area temporanea (indice).
  • Repository: Area di lavoro ha una directory nascosta .git, questo non è l'area di lavoro, ma repository Git.

La figura seguente mostra la relazione tra l'area di lavoro, il repository e la zona messa in scena tra il repository:

La figura a sinistra nell'area di lavoro sul lato destro del repository. Nel repository etichetta "indice" della zona è un'area temporanea (stadio, indice), contrassegnata come ramo "master" è rappresentato dalla struttura di directory master.

La figura possiamo vedere che in questo momento "testa" è in realtà punta a un ramo master "cursore". Quindi posizionare il comando mostrato appare HEAD può essere utilizzato per sostituire il master.

oggetti regione figura identificati come libreria di oggetti Git, in realtà si trova directory ".git / oggetti", che contiene una varietà di oggetti e la creazione di contenuti.

Quando l'area di lavoro di modificare (o aggiungere) il file per eseguire "git add" di comando, l'albero delle directory viene aggiornata area di sosta, mentre l'area di lavoro di modificare (o aggiungere) il contenuto del file viene scritto l'oggetto in una libreria il nuovo oggetto, e l'ID oggetto viene registrato in una zona temporanea dell'indice di file.

Quando si esegue un commit (git commit), albero di un'area temporanea di scrittura al repository (libreria di oggetti), branch master verrà aggiornato di conseguenza. directory Scratch albero che è zona master al momento della presentazione albero diretto.

Quando si esegue il comando "Reset git HEAD", l'area di sosta albero di directory verrà riscritto, esso è sostituito dal punto di diramazione maestro della struttura, ma l'area di lavoro non è interessato.

Quando si esegue "<file> git rm --cached" di comando, eliminare i file direttamente dalla zona di sosta, l'area di lavoro non è quello di fare un cambiamento.

Quando si esegue "git checkout." O "git checkout - <file>" il comando, sostituirà tutta l'area di lavoro di carta con l'area di sosta o il file specificato. Questa operazione è molto pericolosa, sarà chiaro i cambiamenti di lavoro non vengono aggiunti alla zona di sosta.

Quando si esegue "git checkout HEAD." O "HEAD git checkout <file>" il comando, e sostituirà l'area di stoccaggio e file di lavoro temporanei con i punti di diramazione HEAD per padroneggiare tutto o parte del file. Questo comando può anche essere molto pericoloso, perché i cambiamenti non solo cancellare l'area di lavoro modifiche non rimuoverà la zona temporanea non impegnati.