Latest web development tutorials

Git área de trabajo, área de almacenamiento y depósito

concepto básico

Somos conscientes de la primera área de trabajo bajo Git, área de almacenamiento temporal y el concepto de repositorio

  • Área de trabajo: que se puede ver en el catálogo de la computadora.
  • Zona Temporal: Inglés llamada etapa, o índice. Generalmente almacenada en el archivo "directorio de Git" índice (.git / index), por lo que a veces se llama el índice de área temporal (índice).
  • Repositorio: Espacio de trabajo tiene un .git directorio oculto, este no es el área de trabajo, pero repositorio Git.

La siguiente figura muestra la relación entre el espacio de trabajo, el repositorio y zona de concentración entre el repositorio:

La figura de la izquierda en el área de trabajo en el lado derecho del repositorio. En el repositorio de la etiqueta "índice" de la zona es un área temporal (etapa, índice), marcado como rama "master" es representado por el árbol de directorios maestro.

La figura podemos ver que en este momento "HEAD" en realidad está apuntando a una rama principal "cursor". Por tanto, coloca el comando mostrado que aparece la cabeza puede ser utilizado para reemplazar el maestro.

objetos de región figura identificados como biblioteca de objetos de Git, situados realmente directorio ".git / objetos", que contiene una gran variedad de objetos y la creación de contenidos.

Cuando el área de trabajo para modificar (o añadir) el archivo que desea ejecutar "git add" de comandos, el árbol de directorios se actualiza área de ensayo, mientras que el área de trabajo para modificar (o añadir) el contenido del archivo se escribe en el objeto en una biblioteca el nuevo objeto y el ID de objeto se registra en un área temporal del índice de archivo.

Cuando se realiza un commit (git commit), área temporal árbol escrito al (biblioteca de objetos) repositorio, rama principal se actualizará en consecuencia. árbol de directorios de la nada que es la zona principal cuando se envía árbol dirigido.

Al realizar el comando "git reset HEAD", el área de ensayo árbol de directorios se puede reescribir, se reemplaza por el punto de la rama del árbol principal, pero el área de trabajo no se ve afectado.

Al realizar una "--cached <archivo> git rm" comando, borrar archivos directamente desde el área de ensayo, el área de trabajo no es hacer un cambio.

Al realizar una "git checkout." O "git checkout - <archivo>" comando, se reemplazará toda la zona de trabajo de papel con el área de ensayo o el archivo especificado. Esta operación es muy peligroso, borrará los cambios de área de trabajo no se agregan al área de ensayo.

Al realizar una "CABEZA git checkout." O "checkout CABEZA git <archivo>" comando y sustituirá a la zona de almacenamiento y archivo de espacio de trabajo temporal con los puntos de ramificación HEAD para dominar la totalidad o una parte del archivo. Este comando también puede ser muy peligroso, ya que los cambios no sólo limpiar el área de trabajo los cambios no confirmados se eliminará el área temporal no comprometida.