Usuario:ManuelRomero/Git

De WikiEducator
< Usuario:ManuelRomero
Revisión a fecha de 22:14 12 feb 2019; ManuelRomero (Discusión | contribuciones)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Concepto de git
  • Esto implica que podemos establecer estados o versiones y podemos, en un momento dado, recuperar ese fichero o conjunto de ficheros a una versión concreta.
  • Esto también conlleva intrínsecamente copias de seguridad (Una por cada versión).
  • Con git puedo (debo) tener una copia del proyecto en un momento dado en mi local a partir de un servidor donde está el código del proyecto. Después de trabajar en local lo volveré a dejar en el servidor
Ventajas
  • Recupear el conjunto de ficheros (1 0 más) de una versión concreta.
  • Analizar los cambios realizados entre dos versiones
  • Ver el seguimiento de un proyecto o preceso de realización de los ficheros / Aplicaciones.
  • Ver quién y cuándo ha realizado cambios.
  • En general controlar la evolución del proyecto.
Git como un sistema descentralizado
  • Centralizado Vs Descentralizado
Sistema centralizado
SistemaCentralizado.png
  • Todas las operaciones se hacen sobre un servidor
Sistema descentralizado
  • Las operaciones las hacemos sobre un local (En local tenemos que tener un repositorio).
  • Cuando queremos, podemos subir los cambios a un servidor.
  • Del servidor podemos volver a establecer un estado de partido o establecer un repositorio en local

GitDescentralizado.png

Funcionamiento de Git

  • Funciona como un sistema descentralizado
  • Cada vez que guardamos cambios hace una copia del proyecto tal cual está
  • Si algún fichero no tuvo ningún cambio desde la última versión simplemente se hace un enlace al archivo anterior
  • Este concepto se conoce como hacer una foto instantáea de tu proyecto snapshots.
https://git-scm.com/book/en/v2/book/01-introduction/images/snapshots.png
  • Esta es una importante diferencia con otros sistemas de gestión de versiones tipo Subversion que almacena los cambios de los fichero del proyecto en cada versión del mismo y no el fichero completo.
https://git-scm.com/book/en/v2/book/01-introduction/images/deltas.png
Git funciona en local.
  • Esto da mucha rapidez en las operaciones y mucha flexibilidad para trabajar.
  • En la mayoría de otros CVS, dependemos de la red y un servidor para poder trabajar
  • Usar git te garantiza que puedes retornar a cualquir versión de tu proyecto en cualquier momento. Esto en mas de una ocasión te generará una sensación de alivio inigualable.

Los tres estados de GIT

  • Cuando trabajamos con git, establecemos un directorio para especificar el conjunto de ficheros que queremos controlar
  • Vamos a pensar que es el proyecto sobre el cual vamos a realizar la gestión de versión
  • Cada fichero de ese proyecto va a tener uno de tres estados posibles (En lo que se refiere a su control con git)
  • Confirmado es un estado de un fichero que ya ha sido subido a nuestro repositorio o bien que acabamos de clonar de él
  • Modificado cuando un fichero es modificado en local pasa a este estado
  • Preparado Es un fichero modificado y preparado para ser subido a un repositorio


Icon key points.gif

Puntos clave

Estado de cada fichero de un proyecto de git
Confirmado
Fichero réplica de lo que está en el repositorio y no ha sido modificado en local
Modificado
Fichero modificado en local
Preparado
Fichero modificado en local y preparado para subir al repositorio

Navegación entre los estados

NavegacionEstadosGit.png

Instalando git

desde el repositorio

sudo apt-get install git

Actulizando git
  • Desde el repositorio de git
git clone git://git.kernel.org/pub/scm/git/git.git

Configurando git

  • Ver opciones de configuracion
git config 
  • Ficheros de configuracion:
  1. Para todos los usuarios del sistema y todos sus repositorios /etc/gitconfig
  2. Para el usuario actualmente conectado en local $HOME/.config/git/config
  3. Para el repositorio actual ./.git/config
Configurando usuarios
nombre
git config --global user.name Manuel
Direccion de correo
git config --global user.mail ManuelRomeroMiguel@gmail.com
Editor
git config --global core.editor vim
Ver el valor de parámetros configurados
git config --list
Ver un valor concreto
git config <palabre>
git config user.name
Obtener ayuda
git help <palabre>

Iniciar el trabajo con git

Iniciar el proyecto con git
  • En el directorio a gestionar
git init
  • Ahora existe un directorio llamado .git donde está el repositorio local

Creando un repositorio de un proyecto

En el
Ver configuracion

Instalado zsh

#sudo apt-get install zsh
.......
 
The following extra packages will be installed:
  zsh-common
Suggested packages:
  zsh-doc
The following NEW packages will be installed:
  zsh zsh-common

Es un sistema desarrollado por Torwal Linux (ver aquí su historia).