DEV Community 👩‍💻👨‍💻

Cover image for Git for Dummies (like me)
Fernando Chata
Fernando Chata

Posted on • Updated on

Git for Dummies (like me)

Configuración inicial

git config --global user.name "your name"

git config --global user.email "your_mail@mail.com"
Enter fullscreen mode Exit fullscreen mode

Inicializando Git

git init
Enter fullscreen mode Exit fullscreen mode

Esto comando crea una carpeta .git en nuestro directorio de trabajo, donde se almacenará información de todos los cambios que realicemos a nuestro proyecto.

Clonando repositorio remoto

git clone <link>
Enter fullscreen mode Exit fullscreen mode

con este comando "copiamos" a nuestra carpeta local todos los archivos y carpetas de un repositorio remoto.

Agregando los cambios de los archivos

git add <archivo.ext>
or
git add -A
or
git add .
Enter fullscreen mode Exit fullscreen mode

Para guardar los cambios realizados primero debemos prepararlos, esto puede ser archivo por archivo, o todo el conjunto total de modificaciones.

Preparando la subida

git commit -m “<message>”
Enter fullscreen mode Exit fullscreen mode

Este comando guarda los cambios realizados al código, le agrega un id o head a dicho "guardado", todo esto dentro de nuestro servidor local. El parametro "message" es un comentario para poder diferenciar diferentes subidas.

Subiendo cambios a servidor local

git pull origin <branch>
Enter fullscreen mode Exit fullscreen mode

Este comando sube una copia de los cambios realizados en el codigo a nuestro servidor local. El parametro "branch" se refiere a la rama de nuestro servidor donde subiremos nuestros archivos, la rama principal es "master".

Subiendo cambios a servidor remoto

git push origin <branch>
Enter fullscreen mode Exit fullscreen mode

Esto sube nuestos cambios al branch (o rama) de nuestro repositorio remoto, la rama principal es "master".

Otros comandos

git status
Enter fullscreen mode Exit fullscreen mode

Muestra el estado actual de los cambios realizados desde el ultimo commit, los archivos nuevos creados, y los cambios en los diferentes archivos.

git branch
Enter fullscreen mode Exit fullscreen mode

Nos muestra la rama actual donde nos encontramos

git reset --hard origin/master
Enter fullscreen mode Exit fullscreen mode

Regresa el repositorio local al estado del repositorio remoto, se pierden los datos que has realizado desde el ultimo push.

git checkout -b <new branch>
Enter fullscreen mode Exit fullscreen mode

Crea una nueva rama, y nos redirige allí.

git checkout <branch>
Enter fullscreen mode Exit fullscreen mode

Nos cambia de rama.

Top comments (10)

Collapse
 
chrisherlein profile image
Christian Herlein

Buen post!
Una corrección: hay un typo en "git branch" (está git brach).
Agregaría sí "git log", para que cualquiera pueda tener una noción de qué fue lo último que se hizo.
Saludos!

Collapse
 
alexc957 profile image
alexc957

que bueno ver latinos par aca XD

Collapse
 
fernandochata profile image
Fernando Chata Author

imagino no somos los únicos :3

Collapse
 
angelmtztrc profile image
Angel Martinez

Excelente Post Fernando. Una duda. ¿Que no git pull remote <branch> realmente lo que hace es actualizar el repositorio local con todos los cambios que tenga el repositorio remoto? Saludos.

Collapse
 
fernandochata profile image
Fernando Chata Author

Tengo entendido que si, ese comando equivale a un "git fetch " y un "git merge origin/"

Collapse
 
andreabaccolini profile image
Andrea

I use this for all this operation
desktop.github.com/

Collapse
 
alexc957 profile image
alexc957

nope, all hail to the CLI! XD

Collapse
 
fernandochata profile image
Fernando Chata Author

U're a smart person, not like me, who forgets everything :sadFace:

Collapse
 
shubhamtople profile image
Shubham Tople

I prefer using the Github desktop version. I use it mainly for my Hacking Blog Its less of a headache if you ask me

Collapse
 
fernandochata profile image
Fernando Chata Author

But when you use a code editor, like vs code, it is simpler to use the terminal

🌚 Friends don't let friends browse without dark mode.

Sorry, it's true.