En el mundo del desarrollo de software, Git se ha convertido en una herramienta fundamental para el control de versiones. Sin embargo, muchos desarrolladores solo conocen la superficie de sus capacidades. En este artículo, compartiremos algunos conceptos que nos pueden permitir aprovechar al máximo Git y mejorar significativamente tu flujo de trabajo.
Un repaso rapido…
¿Qué es git?
Git es un sistema de control de versiones distribuido. Esto significa que puedo clonar de forma local el proyecto y luego sincronizarlo en un ambiente remoto.
Flujo de trabajo
- Workspace
- add
- reset
- Index
- commit
- Head
Comandos git
Crear un nuevo repositorio
La necesidad de crear un nuevo repositorio es frecuente por tal motivo el comando a usar para esta acción es:
git init
Clonar un repositorio
La necesidad de clonar un repositorio hace parte de las labores cotidianas para esta acción es:
git clone path-repository
git clone username@host:/path/to/repository
Cambiar de branch
La necesidad de cambiar de branch hace parte de las labores diarias, a continuación algunas formas de hacerlo:
git checkout branch
git checkout -b feature/{new-branch-name}
Validar archivos modificados
Una vez realizada la implementación necesaria, es buena práctica validar que archivos fueron modificados durante el cambio, para realizar dicha verificación se usa la siguiente acción.
git status
Preparar archivos modificados
Una vez realizado la verificación de los archivos modificados se procede a integrar los cambio a un espacio temporal, la acción para realizarlo es:
git add .
git add /path/file
Restaurar archivos modificados
Una vez realizado la integración de cambios, puede darse el caso que se requiera restaurar un archivo que no es apropiado integrar para ejecutar la acción sería:
git reset /path/file
git reset –soft
git reset –hard
Confirmar archivos modificados
Una vez realizado la integración de cambios, estamos listos para confirmar el cambio y llevarlo al ambiente remoto, por tal motivo podemos ejecutar el siguiente comando:
git commit -m “nickname/ description”
git commit —-amend —no-edit
Integrar archivos a rama en la nube
Una vez realizado la confirmación del cambio, es necesario llevarlo al branch remoto, para realizar esta acción se puede usar el siguiente comando:
git push origin {new-branch-name}
Descargar rama modificada en la nube
En algunas ocasiones es necesario balancear o actualizar el directorio actual con los cambios realizados por el equipo, esto nos puede traer los famosos “conflictos”, para tal objetivo el siguiente comando nos puede ayudar:
git pull origin {branch-name}
git fetch
git pull origin {branch-name}
Actualizar rama modificada y resolver conflictos
Una de las situaciones no tan buenas es descargar cambios y tener conflictos:
- “Me quiero morir”
- “Mi vida ya no es igual”
- “Renuncio!”
Todo esto tiene solución, existen algunos pasos o ayudas:
git stash
git stash apply
git stash save “description stash”
git stash list
git stash apply stash@{0}
Conclusión
En este artículo, hemos explorado estrategias de Git desde un punto de vista básico, permitiéndote optimizar tu flujo de desarrollo y colaborar de manera más eficiente en proyectos de software. Al implementar estas técnicas, estarás en el camino de convertirte en un maestro de Git y llevar tu desarrollo de software al siguiente nivel. ¡Adelante, explora y domina Git como nunca antes!
Leave a Reply