Aprende a utilizar Github en tus proyectos Micropython. Parte 1

En este artículo te cuento que es Github y como aprovechar su potencial para mantenerte ordenado y compartir con otros tus proyectos.

Control de versiones

  • ¿Cuando escribes código para un proyecto desarrollado en Micropython terminas con un montón de programas con nombres como main1, main2, main_ultimo, main_usar_este y un sinnumero de nombres parecidos?
  • ¿Cuantas veces debiste retomar un proyecto después de unos meses y no estabas seguro de cual era la última versión del programa que debias modificar?
  • ¿Te ha pasado que perdiste alguna nueva y genial funcionalidad porque ya no ubicas el archivo donde modificaste el código?
  • ¿No sabes como compartir tus proyectos con otros usuarios o como encarar un proyecto colaborativo?

Afortunadamente para todos estos inconvenientes tenemos una solución: Git y GitHub.

¿Qué es Git?

Git es un software de código abierto desarrollado originalmente por Linus Torvalds (el creador de Linux) en el año 2005. Surgió de la necesidad de un sistema eficiente para manejar el código fuente de Linux.

Git es un sistema de control de versiones distribuido, diseñado para manejar eficientemente tanto proyectos pequeños como grandes. Sirve para realizar un seguimiento detallado de los cambios en los archivos de un proyecto, facilitando la colaboración entre múltiples desarrolladores.

Permite a los usuarios guardar distintas versiones de un conjunto de archivos, observar las diferencias entre versiones, fusionar cambios y revertir a estados anteriores cuando sea necesario. Su naturaleza distribuida implica que cada colaborador trabaja con una copia completa de los archivos, ofreciendo flexibilidad y seguridad en el manejo de datos.

Aunque no formes parte de un equipo de desarrolladores ni trabajes en un proyecto de gran envergadura, Git te permite administrar de forma simple y sencilla las distintas versiones de tu código (en realidad, de cualquier archivo) para que siempre tengas la última versión, seas capaz de analizar los cambios que fuiste realizando a lo largo del tiempo y eventualmente volver a una versión anterior si fuera necesario.

Git

Git te permite llevar un control de las distintas versiones de tu código

¿Cómo usar Git?

Git es un programa, así que antes de poder utilizarlo debes instalarlo en tu computadora según el sistema operativo que tengas.

Puedes descargarlo de su sitio oficial y seguir las instrucciones de instalación.

Originalmente, Git funciona desde una ventana de comandos o terminal dentro de la cual debes escribir distintos comandos específicos. Algo así:

git commit -m "Agrega timeout al leer pin de datos"
git push origin master

Los desarrolladores que lo usan a diario recuerdan todos los comandos de memoria, pero si lo vas a usar ocasionalmente para mantener ordenado el código de tus proyectos, te aconsejo que instales un cliente con interface gráfica (con “ventanitas”) que te permita utilizar Git de una forma mas intuitiva.

En mi caso yo uso GitHub desktop, que puedes descargar desde esta página y cuyo funcionamiento te explicaré mas adelante.

Git y Github

Llegado a este punto te preguntarás ¿y GitHub? ¿Es lo mismo que Git?

Bueno, si y no.

Git tiene todo lo que necesitas para realizar el control de versiones de tus programas e incluso para trabajar de manera colaborativa con otras personas.

GitHub es un servicio basado en la nube, actualmente propiedad de Microsoft, que funciona sobre Git pero que además facilita la tarea de publicar y compartir el código (aunque si lo deseas puede permanecer privado), agregando herramientas de documentación, gestión de tareas, reporte de errores, etc. Se puede decir que GitHub le añade una capa social a Git.

GitHub

GitHub es un servicio web basado en Git que facilita compartir el código y el trabajo colaborativo

En realidad GitHub no es el único servicio que realiza esas funciones. Existen muhos otros mas como GitLab, Bitbucket y SourceForge, entre otros.

GitHub tiene varios planes, incluyendo uno gratuito que es perfectamente util si manejas unos pocos proyectos, sobre todo si los haces públicos.

Diccionario Git

Antes de continuar vamos a definir algunos terminos básicos que se emplean al trabajar con Git y Github:

Repositorio (Repo)

Un repositorio es un directorio o espacio de almacenamiento donde se guardan tus proyectos. Puede estar alojado en un servidor remoto (como GitHub) o en tu máquina local.

Commit

Un commit es una grabación de los cambios realizados en el repositorio. Cada commit tiene un mensaje asociado que describe lo que se ha modificado.

Push

Hacer un push es enviar tus commits locales a un repositorio remoto.

Pull

Significa obtener los últimos cambios de un repositorio remoto y fusionarlos en tu rama de trabajo local.

Branch (Rama)

Una rama en Git es una línea independiente de desarrollo. Las ramas sirven para trabajar en diferentes versiones de un repositorio al mismo tiempo.

Merge (Fusionar)

Fusionar es el acto de integrar los cambios de una rama a otra. Por ejemplo, cuando se completa una característica en una rama de desarrollo, se puede fusionar con la rama principal.

Fork

Un fork es una copia de un repositorio. Hacer fork de un repositorio te permite experimentar con cambios sin afectar al proyecto original.

Clone (Clonar)

Clonar es el acto de copiar un repositorio Git desde un servidor remoto a tu máquina local.

Master:

El nombre por defecto de la rama principal en Git.

Conclusiones

En este artículo vimos de que se trata Git y Github, para que sirven y en que se diferencian. También vimos como instalar un cliente Git con interfaz gráfica (GitHub Desktop) y la terminología básica que se usa en GitHub.

En un próximo artículo seguiremos avanzando con el tema y te mostraré en detalle como crear un repositorio en GitHub y como realizar el control de versiones de tu código.

Navegación de la serieAprende a utilizar Github en tus proyectos Micropython. Parte 2 >>

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Habilitar notificaciones OK No, gracias