Comandos Útiles Git

I have worked as a frontend and backend developer handling technologies such as Django, Ionic, Laravel, MySQL, Spring (Java), Oracle, NodeJS, Angular, VueJS with the goal of developing websites and mobile applications that offer high performance and are interactive.
You can learn more about me by visiting my website: www.stalinmaza.com
#frontend #backend #fullstack #javascript #nodejs #php
Git es una grandiosa herramienta que nos permite realizar un control de versiones profesional sobre nuestros proyectos y saber manejarla es un plus muy importante, en este post resumo algunos puntos importantes que me han servido a lo largo de mi carrera como Desarrollador Web.
Configuraciones globales
Para realizar configuraciones ejecutamos el comando "git config --global", por ejemplo para establecer el usuario y el correo del usuario global en tu pc o laptop debes ejecutar:
### CONFIGURACION GLOBAL
git config --global user.name "YOUR_USER_NAME"
git config --global user.email "YOUR_USER_EMAIL"
Inicializar un repositorio
Para inicializar un repositorio en el directorio actual ejecutamos:
git init
Añadir archivos al stage
Para añadir archivos al stage y github les mantenga seguimiento ejecutamos el comando:
git add file_name // archivo en especifico
git add . // todos los archivos
Cambiar de Rama
Si estas trabajando en una rama y deseas cambiar a otra y crearla al mismo tiempo puedes ejecutar el comando:
git checkout -b branch_name
Hacer un commit
Si estas trabajando con archivos en el stage y deseas hacer un commit debes ejecutar el comando:
git commit -m "message_to_commit"
Mostrar origenes locales y remotos del repositorio
Si estas trabajando con archivos en el stage y deseas hacer un commit debes ejecutar el comando:
git remote show origin
Remover archivos
En git para remover archivos es similar a como se trabaja en Linux
git rm ‘.txt’ #remover un archivo en especifico
git rm -r ‘doodle’ #remover carpetas
git rm -r --cached . # remover archivos cache
Listar diferencias
Para poder listar las diferencias o cambios entre el repositorio remoto y el local podemos ejecutar el comando:
git diff [filename]
Crear alias de comandos
Si deseas ver de una mejor manera el log de tu repositorio puedes crear el siguiente alias
git config --global alias.lg "log --oneline --decorate --all --graph"
Con esto para ver el log del repositorio solo debes ejecutar "git lg"
Si deseas listar de una forma amigable los archivos que estan en el stage o los que no están puedes crear el alias
git config --global alias.s "status -s -b"
Con esto para ver el log del repositorio solo debes ejecutar "git s"
Crear etiquetas(tags)
Para crear etiquetas, por ejemplo para mantener un versionado del proyecto debemos ejecutar el comando:
git tag -a v0.0.1 #commit -m "message" //reemplazas v.0.0.1 por tu versión
Para subir las etiquetas a Github debes eejecutar el siguiente comando, ya que por defecto no se suben al ejecutar un git push
git push --tags
Clonar Repositorio
Para clonar un repositorio lo hacemos de la siguiente manera, especificando la url del repositorio y opcionalmente la rama que deseamos clonar
git clone [branch_name] url_repositorio_remoto directorio_local_donde_guardar
Bajar cambios de un repositorio remoto
Podemos utilizar el comando
git pull origin [branch_name] [--allow-unrelated-histories]
el cual descarga los cambios remotos e inmediatamente intenta hacer un merge con los cambios locales. Si no deseas que suceda esto puedes usar los siguientes comandos:
git fetch origin [branch_name] [--all]
el cual se descarga los cambios remotos, y luego con el comando:
git merge
realizamos manualmente la fusión(merge), si da errores de conflictos revisamos los archivos que dieron conflicto y podemos aceptar los dos cambios, aceptar nuestros cambios o aceptar los cambios que vienen del repositorio remoto
Regresar al ultimo commit y descartar nuevos cambios
Para resetear nuestro repositorio al ultimo commit debemos ejecutar el siguiente comando:
git reset --hard origin/[branchname]
Setear una rama local a una rama remota
Si creamos una rama local y queremos que git sepa a que rama nos referimos cuando queremos hacer un git push o git fetch, debemos ejecutar el siguiente comando:
git branch --set-upstream-to=origin/[branch_local_name] [branch_remote_name]

