Guía de supervivencia en git

A continuación una brevísima guía de cómo y cuándo cada uno de estos comandos te puede servir para llevar una vida tranquila en git, principalmente si vas comenzando.

Una vez por computadora

hay que configurar git para que sepa quién hace los cambios en el repositorio

git config --global user.name "Tu Nombre"
git config --global user.email "tu@email.com"

Una vez por cada proyecto nuevo

hay que inicializar el repositorio

cd mi-proyecto
git init

Si el proyecto ya existe y tenemos la URL de algún proveedor (como gitlab, github, etc.) entonces es más bien

cd algun/lugar/donde/pongo/proyectos
git clone la-url

Cada que quieras saber

el estado del proyecto haz git status

git status

Cada que estés satisfecha

o que quieras guardar un momento en la historia del proyecto hay que hacer commit

git add mi_archivo.py
git commit -m "resolví un super bug"

Cada que quieras probar

nuevas ideas pero no estés segura de si el resultado será util para el proyecto crea una rama

git checkout -b mi-super-idea

(-b crea una nueva rama si no existe)

Cuando quieras volver

al proyecto antes de la nueva idea que estás probando

git checkout master

(no tiene -b pues master es la rama por defecto). Puedes volver a tu gran idea con el mismo comando:

git checkout mi-super-idea

Cuando quieras subir

tus cambios locales por primera vez de cierta rama a un repositorio remoto haz push

git push -u origin master

Cambia master por el nombre de otra rama para respalar una rama en específico. Si no es la primera vez que lo haces entonces basta con estar en la rama que quieres respaldar y hacer

git push

Cuando quieras unir

los cambios hechos en una rama a la historia principal (rama master) del proyecto haz merge

git checkout master
git merge mi-super-idea

Cuando quieras agregar una comexión a repositorio remoto

para respaldar tu proyecto o compartirlo con otras personas

git remote add nombre-del-remoto url-del-remoto

si es el único lugar donde vas a respaldar, o el primero que agregas, considera llamarlo origin, que es lo que se acostumbra. Si estás trabajando en un proyecto open source y quieres añadir como remoto el proyecto original considera llamarlo upstream.