https://github.com/e7oy/git_cheatsheet
https://github.com/e7oy/git_cheatsheet
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/e7oy/git_cheatsheet
- Owner: E7OY
- Created: 2024-10-24T09:49:55.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-14T10:01:32.000Z (over 1 year ago)
- Last Synced: 2024-11-14T11:18:09.827Z (over 1 year ago)
- Size: 39.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

# GIT CHEAT SHEET
Este repositorio es una hoja de trucos de Git. Proporciona una guía completa sobre varios comandos de Git y sus descripciones, incluyendo áreas de trabajo en Git, creación de repositorios, seguimiento de cambios,
mover y renombrar archivos, guardar cambios, historial de commits, revertir commits y sincronizar cambios. El archivo README contiene comandos detallados y su uso para una mejor comprensión y gestión de los repositorios Git.

## Índice
* [Áreas de trabajo de Git](#áreas-de-trabajo-de-git)
* [Crear repos](#crear-repos)
* [Cambios Repos](#cambios-repos)
* [Mover y Reubicar Archivos](#mover-y-reubicar-archivos)
* [Guardar cambios](#guardar-cambios)
* [Historial commits](#historial-commits)
* [Rehacer commits](#rehacer-commits)
* [Sincronizar cambios](#sincronizar-cambios)
## **ÁREAS DE TRABAJO DE GIT**
> | **Area** | **Descripción** |
> | --- | --- |
> | Directorio de trabajo (Working directory) | Carpeta donde se encuentran los archivos de tu proyecto. Aquí es dónde trabajas activamente con los archivos, modificándolos, eliminándolos o añadiendo nuevos. |
>| Área de preparación (Staging area) | Conocida como índice, área intermedia dónde se colocan los cambios que deseas incluir en el próximo commit, cuando se usa `git add`, se están moviendo los cambios desde el directorio de trabajo a esta área. Los archivos en el índice están listos para ser confirmados (comitted). |
> | Repositorio (Repository) | Dónde se almacena el historial de todos los commits del proyecto. Cuando se hace un `git commit` se mueven los cambios desde el área de preparación al repositorio. |
---
## **CREAR REPOS**
| **Comando** | **Descripción** |
| --- | --- |
| `git init [nombreRepo]` | Crea un repositorio local con el nombre especificado, con todos los archivos necesarios para el seguimiento de versiones. |
| `git clone [urlRepo]` | Crea una copia local de un repositorio remoto de Git con la URL especificada. |
---
## **CAMBIOS REPOS**
| **Comando** | **Descripción** |
| --- | --- |
| `git status` | Muestra el estado del directorio de trabajo.|
| `git diff` | Muestra las diferencias entre los cambios del directorio de trabajo y el área de preparación. |
| `git diff --staged` | Muestra las diferencias entre los archivos en el área de preparación y la última versión del archivo. |
| `git add [fileName]` | Añade un archivo específico al área de preparación. |
| `git add .` | Añade todos los cambios y archivos en el directorio de trabajo al área de preparación. :warning: Úsalo con precaución ya que puede incluir archivos no deseados. |
| `git reset [fileName]` | Deshace los cambios en el área de preparación para el archivo especificado, devolviéndolo al estado del último commit. |
| `git commit -m [commitMessage]` | Confirma los cambios del área de preparación con un mensaje de confirmación. |
---
## RAMAS
| **Comando** | **Descripción** |
| --- | --- |
| `git branch` | Enumera todas las ramas del repositorio actual. |
| `git branch [nombreRama]` | Crea una nueva rama con el nombre especificado. |
| `git checkout [nombreRama]` | Cambia a la rama especificada. |
| `git merge [nombreRama]` | Fusiona los cambios de la rama especificada con la rama actual. |
| `git branch -d [nombreRama]` | Borra la rama especificada. |
---
## MOVER Y REUBICAR ARCHIVOS
| **Comando** | **Descripción** |
| --- | --- |
| `git rm [nombreArchivo]` | Borra el archivo especificado del sistema de archivos y del índice de Git. |
| `git rm --cached [nombreArchivo]` | Retira el archivo especificado del control de versiones, pero lo preserva a nivel local. |
| `git mv [nombreArchivo] [nuevoNombreArchivo]` | Cambia el nombre del archivo especificado. |
---
### GUARDAR CAMBIOS
| **Comando** | **Descripción** |
| --- | --- |
| `git stash` | Almacena temporalmente los cambios no confirmados en una pila stash limpiando el área de trabajo sin necesidad de hacer un commit. |
| `git stash pop` | Restaura los archivos guardados del último stash. |
| `git stash list` | Enumera todos los stashes guardados con un identificador único. |
| `git stash drop [stash@{n}]` | Elimina stash de cambios especificado en el índice n. |
---
## HISTORIAL COMMITS
| **Comando** | **Descripción** |
| --- | --- |
| `git log` | Enumera el historial de commits de la rama actual. |
| `git log --oneline` | Muestra el historial en una sola línea por commit, mostrando solo el hash corto y el mensaje del commit. |
| `git log -n x` | Muestra solo los últimos x commits. |
| `git log --grep = [palabraCommit]` | Muestra solo los commits que contienen la palabra "palabraCommit" en el mensaje del commit. |
| `git log --author = [nombreAutor]` | Muestra solo los commits hechos por un autor específico. |
| `git log --follow [nombreArchivo]` | Muestra el historial de commits de un archivo específico incluyendo los cambios de nombre de este. |
| `git diff [primeraRama]...[segundaRama]` | Muestra las diferencias de contenido entre dos ramas. |
| `git show [commit]` | Muestra la información detallada sobre un commit específico pasándole como parámetro el hash o identificador del commit. |
---
## REHACER COMMITS
| **Comando** | **Descripción** |
| --- | --- |
| `git reset [commit]` | Deshace todos los commits después del commit especificado, preservando los cambios localmente. |
| `git reset --hard [commit]` | Reestablece completamente todo el repo al estado exacto del commit especificado, eliminando cualquier cambio posterior. |
| `git log -n x` | Muestra solo los últimos x commits. |
---
## SINCRONIZAR CAMBIOS
| **Comando** | **Descripción** |
| --- | --- |
| `git fetch [nombreRepo]` | Descarga los cambios del repo remoto especificado, sin integrarlos en la rama actual, permitiendo inspeccionar los cambios entes de unirlos al área de trabajo. |
| `git merge [nombreRama]` | Combina los cambios de la rama actual con la rama especificada. |
| `git push [nombreRepoRemoto] [nombreRamaRemota]` | Envía los commits locales a un repositorio remoto. |
| `git pull` | Actualiza el repo local con los cambios del repo remoto. Combina los comandos git fetch(descarga cambios del repo remoto) y git merge(combina los cambios a la rama actual) |