5 comandos Git para desarrollar en colaboración
Lección 7 / 53
Git Guía Git Guía Git español
Como hemos ya anticipado, una de las fortalezas de Git es su soporte para el desarrollo de proyectos distribuidos. Si bien Git ofrece varias posibilidades para administrar el desarrollo colaborativo, vamos a intentar presentar el caso de un desarrollador web que quiere hacer su contribución a un proyecto compartido que ya comenzó, analizando aquí también los comandos principales.
- recuperar el repository alojado en un un server remoto
$ git clone https://example.com/project.git Cloning into 'project'... remote: Enumerating objects: 19, done. remote: Counting objects: 100% (19/19), done. remote: Compressing objects: 100% (14/14), done. remote: Total 19 (delta 3), reused 16 (delta 3), pack-reused 0 Receiving objects: 100% (19/19), 112.25 KiB | 281.00 KiB/s, done. Resolving deltas: 100% (3/3), done.
- entrar en la directory project creada por el paso anterior
cd project
- crear un branch
git branch my-contribution
- pasar branch apenas creado
$ git checkout my-contribution Switched to branch 'my-contribution'
- realizar cambios en los archivos existentes, o agregar un archivo, y ejecutar el commit, como se ha hecho en la sección anterior
- verificar la fuente actual “remota” del repository
$ git remote --verbose origin https://example.com/project.git (fetch) origin https://example.com/project.git (push)
- enviar tus cambios a un branch del repository remoto
git push origin my-contribution
¡Felicitaciones, has creado tu primera contribución (aunque aún no en la línea "principal" del proyecto) a un proyecto remoto!
¿Qué hemos hecho?
Igual que arriba, los comandos presentados presentados para el desarrollo distribuido han hecho lo siguiente:
- creación de una copia local del repository en Git - el comando git clone crea un clone de un repository disponible en un server; se creará una directory locale que contiene la copia completa (de ahí el nombre clone) del repository remoto, incluyendo toda la history y todos los commits que la componen;
- creación de un branch en Git - en el próximo capítulo veremos en detalle qué es un branch, por ahora es suficiente pensar en los branch como diferentes "líneas de tiempo" del repository; cuando se clona un repository remoto, se activa el branch predeterminado (cuyo nombre suele ser master o main), el comando git branch creó un nuevo brach que "continúa" desde el último commit aplicado al branch principal.
- selección de un branch en Git - es posible elegir en qué branch trabajar usando el comando git checkout; este comando modifica el contenido del directory local del repository devolviendo su contenido al último commit aplicado en ese branch; los commit posteriores se aplicarán solo al branch seleccionado actualmente;
- visualización de los “remote” en Git - el comando git remote permite saber a qué fuente remota apunta nuestro clon local; muy a menudo será una sola fuente, pero dependiendo de la composición y las elecciones del equipo, podría haber múltiples fuentes remotas, posiblemente separadas por fuentes desde las cuales recuperar los cambios de otros desarrolladores (fetch) y fuentes a las cuales enviar nuestros cambios (push);
- envío de tus cambios en Git - con el comando git push es posible enviar a un repository remoto (en el ejemplo el llamado origen) lo que está presente en el clon local; en particular, con el comando anterior, se envía la rama my-contribution y todos los commits que contiene;
Entraremos en el flujo de trabajo con repository remotos con más detalle más adelante, pero ya con los comandos introducidos hasta ahora es posible crear una serie de cambios en un proyecto preexistente, "recopilados" en un branch separado que, una vez hecho el "push" está disponible para todos los que tienen acceso al repository remoto.
Anterior
6 5 comandos Git para ..Siguiente
8 Repository en Git