GIT

GIT es un software de control de versiones.

La finalidad es poder registrar los cambios que se presenten en el proyecto.

Fundamentalmente su uso se da cuando se trabaja en equipo, ya que varias personas van a estar trabajando sobre los mismos archivos haciendo diferentes versiones.

Obviamente, también se puede utilizar para trabajar solo!

La opción para poder trabajar sobre tu proyecto de manera remota es, por ejemplo, GitHub, que lo vamos a ver la clase que viene.

Ir al resumen de Github

¿Cómo saber si en mi PC tengo instalado GIT?

  1. Abro la consola (preferentemente en la ubicación en dónde voy a trabajar)
  2. git version
  3. Si este comando no funciona, instalar GIT.
  4. https://git-scm.com/

Configurar GIT por única vez en la PC

  1. git config --global user.name "Johanna Palo"
  2. git config --global user.email tuemail@mail.com
  3. Para confirmar que usuario y mail escribiste, poné el mismo comando pero sin los datos ;)
  4. Ya podés cerrar la consola!

Empezar con GIT desde 0

  1. Parate en la carpeta donde tenés los archivos de tu proyecto (Esta carpeta se llama REPOSITORIO o WORKING DIRECTORY)
  2. Borra la ruta donde te dice que estas y escribi CMD y se te va abrir la consola ya en la ruta correcta
  3. Ahora que ya estás parado en el Repositorio (o working directory) escribí en la consola:
  4. git init
  5. Esto inicia el repositorio. Se hace una sola vez por working directory
  6. En VSC, las carpetas recien agregadas se ponen en verde con una U
  7. U: untracked / sin seguimiento
  8. Listo! Ya estás trabajando con GIT.

Seguir trabajando con GIT

  1. git status -s: Indica el estado de cada archivo. Si se crearon, si se eliminaron o si se modificaron.
  2. Una vez que sabemos que archivos queremos agregar, hacemos git add
  3. git add: Agrega archivos al stagin area. Podemos hacerlo agregando archivo por archivo "git add index.html" o agregando todo junto "git add ." (Fijate que hay un espacio entre add y el .
  4. Una vez que esta en el área temporal, se puede hacer un commit.
  5. git commit -m: "Se agrega mensaje"
  6. git log: Con esto vamos a ver el listado de commits con mas detalles, "más prolijo"
  7. git log --oneline: Este comando nos da una vista rápida con casi la misma información que el comando anterior.

Ramas / Branches

  1. git branch nuevaRama:Crea la rama con el nombre que querramos. Aconsejo usar camelCase
  2. git checkout nuevaRama:Me muevo a la nueva rama
  3. git branch: me muestra las ramas que hay
  4. git branch -l: veo los nombres de todas las ramas
  5. git branch -d: elimina una rama
  6. git branch -m: renombra la rama en la que estoy.
  7. git log --graph --oneline: Este comando nos muestra en un gráfico las bifurcaciones de la rama

Merge / Mezclar

  1. git merge: mezcla las ramas. Hay que pararse siempre sobre la rama master para mergear!

Git Ignore

No todos los archivos y carpetas son necesarios. A veces incluso hay carpetas como es el caso de node_modules que pesan un montón y no le sirven a nadie más que a vos o que tienen información "confidencial" o nada relevante para personas externas al proyecto como los archivos package.json o package.json-lock

En estos casos vamos a crear un archivo oculto que se va a llamar .gitignore y en ese archivo vamos a escribir los nombres de los archivos o carpetas que queremos obviar de guarlarlos en git

  1. Crear archivo .gitignore (Recordá que es un archivo oculto, por eso va con un . delante. En Mac y Linux estos archivos no son visibles, en windows si tenés activada la opción de "ver archivos ocultos" vas a poder visualizarlo.)
  2. Escribir dentro los archivos que querés ignorar
    • node_modules/ : Si es una carpeta lo que vas a ignorar, escribí el nombre de la carpeta y terminalo con /
    • *.json :Si es una extensión de archivo, se escribe primero el * y luego la extensión incluyendo el .
    • style.css :Si es un archivo, se escribe el nombre del archivo con su extensión.
  3. Si querés borrar algo que te habías olvidado o generaste el .gitignore después de haber agregado archivos a git:
    1. Hace los pasos 1 y 2 de la misma manera
    2. git rm -r --cached nombre_archivo_o_carpeta_olvidada
    3. git commit -m 'Eliminada carpeta node_modules del repo'