Comandos básicos de Git

Comandos básicos de Git

Git es un software de control de versiones diseñado por Linus Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando éstas tienen un gran número de archivos de código fuente. Su propósito es llevar registro de los cambios en los archivos y coordinar el trabajo que varias personas realizan sobre archivos compartido 1.

Para empezar con Git es necesario tener claro que un proyecto se suele guardar en dos lugares: en un repositorio local y uno remoto. El local es la versión que se encuentra en el ordenador donde se realizan los cambios propios y en el remoto es la versión que se guarda en el servicio web de control de versiones que elijas. Lo habitual que se recomienda son los servicios web como GitLab o Gitea(en caso de querer autoalojarlo), mientras que el antiguo GitHub ha quedado renegado desde su compra por parte de Microsoft.

Configurar git

Configuración global de git con un nombre de usuario o un correo electrónico:

1
2
git config --global user.name "Nombre de Ejemplo"
git config --global user.email nombre@ejemplo.com 

Clonar un repositorio

Si es un repositorio local:

1
git clone /ruta/del/repositorio

En caso de querer utilizar un proyecto en un repositorio remoto:

1
git clone https://<URL_repositorio_remoto>

Iniciar un repositorio

Estando en el directorio en el que queremos iniciar el repositorio introducimos en el siguiente comando:

1
git init

Crear un commit

Primero se agregan los archivos modificados al index y se confirma el commit con un mensaje explicativo:

1
2
git add .
git commit -m "Mensaje explicativo de que se ha hecho"

Ver la lista de archivos que han cambiado o están en el index

1
git status

Crear una rama o cambiar a otra ya creada

Si quieres crear una rama:

1
git checkout -b <nombre_rama>

Para cambiar a una rama ya creada:

1
git checkout <nombre_rama>

Conectar un repositorio remoto

Primero, si quieres ver los repositorios ya conectados:

1
git remote -v

Para añadir un nuevo repositorio remoto ya existente:

1
git remote add origin https://<URL_repositorio_remoto>

Enviar los cambios desde una rama local al repositorio remoto

1
git push origin <nombre_rama>

Buscar los cambios realizados desde el repositorio remoto que no están en el repositorio local

1
git fetch <origin>

Fusionar o unir los cambios realizados en la rama “nombre_rama” con la rama actual

1
git merge <nombre_rama>

Fusionar los cambios realizados en el repositorio local con e remoto (unifica los comandos fetch y merge en un único comando)

1
git pull 

Visualizar los conflictos presentes

Si se quieren todos los conflictos:

1
git diff 

Si se quiere entre dos ramas:

1
git diff <rama_origen> <rama_objetivo>

Visualizar todas las ramas del repositorio local y remoto

1
git branch -a -v

Borrar una rama

1
git branch -d <nombre_rama>

Borrar archivos del index y del directorio que está trabajando

1
git rm <nombre_archivo>

Visualizar la historia de commits de la rama donde te encuentre

1
git log --graph

Visualizar la historia de commits de todo (repositorio local y remoto)

1
git log --graph --all

Inspeccionar un repositorio

Si se quiere inspccionar un repositorio local:

1
git  show

Si se trata de un repositorio remoto:

1
git remote show origin