56

Qué es GitHub y cómo usarlo para aprovechar sus beneficios

14171Puntos

hace 3 años

GitHub es una plataforma de alojamiento, propiedad de Microsoft, que ofrece a los desarrolladores la posibilidad de crear repositorios de código y guardarlos en la nube de forma segura, usando un sistema de control de versiones llamado Git.

Facilita la organización de proyectos y permite la colaboración de varios desarrolladores en tiempo real. Es decir, nos permite centralizar el contenido del repositorio para poder colaborar con los otros miembros de nuestra organización.

GitHub esta basada en el sistema de control de versiones distribuida de Git, por lo que se puede contar con sus funciones y herramientas, aunque GitHub ofrece varias opciones adicionales y su interfaz es mucho más fácil de manejar, por lo que no es absolutamente necesario que las personas que lo usan tengan un gran conocimiento técnico. Aquí puedes conocer más sobre su historia.

Si tú ya has utilizado este servicio de alojamiento para tus proyectos, cuéntame en los comentarios qué tal te ha funcionado y cuáles son tus mejores tips. Si aún no lo conoces o te gustaría aprovecharlo mejor, recuerda que en Platzi tenemos un curso de GitHub ideal para ti y que puedes empezar sin costo.

github-beneficios-blog_cover.png

Ventajas de GitHub

Existe un gran número de razones que convierten a GitHub en una gran opción para el control y gestión de tus proyectos de código. Aquí algunas de ellas:

  • GitHub permite que alojemos proyectos en repositorios de forma gratuita
  • Te brinda la posibilidad de personalizar tu perfil en la plataforma
  • Los repositorios son públicos por defecto. Sin embargo, GitHub te permite también alojar tus proyectos de forma privada
  • Puedes crear y compartir páginas web estáticas con GitHub Pages
  • Facilita compartir tus proyectos de una forma mucho más fácil y crear un portafolio
  • Te permite colaborar para mejorar los proyectos de otros y a otros mejorar o aportar a los tuyos
  • Ayuda reducir significativamente los errores humanos y escribir tu código más rápido con GitHub Copilot

Cómo funciona GitHub

GitHub te permite subir tus repositorios de código para que sean almacenados en la nube a través del sistema de control de versiones de Git y participar también en el desarrollo de proyectos de terceros, lo que significa que cualquiera en el mundo que use GitHub puede encontrar tu código, aprender de él y, por qué no, mejorarlo. Al igual que tú puedes acceder a los repositorios de código de otras personas.

¿Qué es el control de versiones?

Se le llama control de versiones a la administración de los cambios que se realizan sobre los elementos o la configuración de algún proyecto. En otras palabras, el control de versiones sirve para conocer y autorizar los cambios que realicen los colaboradores en tu proyecto, guardando información de qué incluyen los cambios y cuándo se hicieron. Este control comienza con una versión básica del documento y luego va guardando los cambios que se realicen a lo largo del proyecto.

El control de versiones es una herramienta valiosísima, pues con ella puedes tener acceso a las versiones anteriores de tu proyecto si es que en algún momento no llega a funcionar de forma correcta.

¿Qué es Git?

Es el sistema de control de versiones más moderno y popular del mundo. Fue creado por Linus Torvalds para garantizar la eficiencia y confiabilidad del mantenimiento íntegro de versiones de un proyecto, aun cuando este tenga un gran número de archivos o ramas en su código fuente.

Git proporciona herramientas que facilitan el desarrollo del código entre un equipo de desarrolladores de manera rápida e inteligente. Además, podrás comparar los cambios realizados a lo largo del tiempo, ver quién modificó algo en el código del software y conocer en qué momento se introdujo un cambio que generó un error en tu proyecto, facilitando la opción de revertirlo.

Entonces, cuál es la diferencia entre Git y GitHub

Debes tener en cuenta que Git es un sistema que permite establecer un control de versiones, mientras que GitHub es una plataforma que ofrece un grupo de funciones que facilitan el uso de Git y la colaboración en tiempo real, así como el almacenamiento en la nube.

¿Por qué GitHub es tan popular?

GitHub gana su popularidad gracias a que es la principal plataforma para la creación de trabajos colaborativos. De igual manera, no censura o discrimina lenguaje de programación alguno, los acepta a todos sin inconveniente, por lo que le facilita el trabajo a la gran mayoría de los desarrolladores. En esta plataforma viven y crecen millones de proyectos de código abierto que te permiten aprender y colaborar en la creación de grandes iniciativas.

También es considerada una gran red social, pues esta herramienta te permite conocer otros perfiles, unirse a sus proyectos, ver su trabajo y realizar trabajo colaborativo.

¿Cómo empezar a usar GitHub?

Una vez que ya conocimos todo sobre GitHub y sus bondades, es hora de ponernos manos a la obra para adentrarnos en este interesante mundo:

1. Crear un Repositorio de GitHub

Lo primero que debes tener es una cuenta creada en GitHub. Registrarse es gratuito. Una vez que tengas la cuenta, inicia sesión con tu usuario y clave. Luego, sigue estos pasos:

  • En la esquina superior derecha de cualquier página, encontrarás un signo de + que sirve para realizar las acciones de la página. Das clic en el símbolo y creas un nuevo repositorio (new repository).

  • Una vez realizado eso, debes llenar los datos que se solicitan a continuación. Darle un nombre, que de preferencia debe ser claro, definir si será público o privado y colocar una pequeña descripción sobre tu repositorio. Este campo es opcional, pero te recomiendo que lo llenes para organizarte mejor y que los demás usuarios tengan una idea sobre lo que trata el repositorio que estás creando.

  • Activa el checkbox que dice iniciar tu repositorio con un README, este será tu primer archivo, la presentación de tu proyecto.

  • Presiona el botón de “crear repositorio” y listo. Ya tienes tu primer repositorio creado.

Conoce aquí una guía de buenas prácticas para trabajar con GitHub.

2. Crear ramas (branches) en GitHub

Branch se puede ver como el mapa lineal de los commits que has realizado al archivo. Cuando empezamos un proyecto con GitHub, automáticamente nos crea una rama llamada master, a partir de la cual comenzaremos a crear nuestras propias ramas.

  • Entra en tu repositorio.
  • En la parte superior de la página da clic en Rama actual. En la lista de rama selecciona la rama llamada master, que será nuestra base para la que estamos creando.
  • Luego presiona New Branch (Nueva Rama)
  • Añade el nombre de tu nueva rama
  • Selecciona la rama actual (master) en la que se basara la nueva rama
  • Presiona Create Branch (Crear Rama)

Por acá encontrarás tips y trucos para GitHub que te harán ser un pro del control de versiones.

3. Entender los commits de GitHub

Commit es la denominación que se le da a los cambios guardados en Github. En otras palabras, commit es la acción de subir los archivos con los cambios realizados en tus repositorios y guardarlos.

Para realizar el commits de Github debes seguir los siguientes pasos:

1.- Se debe verificar el estado de nuestro repositorio ejecutando el siguiente comando:

git status

Una vez realizado el comando anterior, te aparecerá una lista con los archivos que fueron modificados y con los que están agregados al índice, listos para subir.

  1. Si aún existen archivos sin agregar al índice, debes ejecutar el siguiente comando:
gitadd

De esta forma se añaden todos los cambios pendientes.

3.- Ahora vamos a generar el commit ejecutando el siguiente comando:

git commit -m "Un comentario de los cambios realizados"

Es importante que en este paso agregues una descripción clara, esta se guardará en el historial y podremos entender mejor los cambios más adelante. Cuando no se describen bien los cambios que se realizaron, volver a reparar un bug (error) puede ser una pesadilla.

Y eso es todo. Son pasos bastante sencillos, pero nunca está demás revisar un par de veces lo que vamos a subir a nuestro repositorio remoto y seguir practicando.

4. Crear solicitudes de extracción (pull requests) en GitHub

Las solicitudes de extracción o pull requests son el formato para contribuir con los cambios que realizaste a un código base para que sean fusionados.

Los pasos que debes seguir son los siguientes:

  1. Haz clic en el botón bifurcación (Fork) en la página de GitHub que contiene la base de código original al que deseas contribuir, para crear una copia del mismo en tu cuenta. Bifurcar un repositorio te permite realizar cambios y experimentos sin la preocupación de afectar el proyecto original.
  2. Obtén la URL de la bifurcación que acabas de crear
  3. Usa el comando git clone para clonar la base de código de Fork en la página de tu Github en tu computadora local
  4. Realiza los cambios que consideres necesarios en tu repositorio local. Agrega y modifica archivos.
  5. Ahora inserta el repositorio de código local en el repositorio de código de Fork en Github, con los siguientes comandos:
gitadd
git commit
gitpush
  1. Vuelve a la página de tu fork en Github
  2. Presiona el botón Solicitud de Extracción (pull request)
  3. Dale un nombre a tu solicitud de extracción, colocando los detalles de los cambios que realizaste y finalmente presiona el botón enviar. ¡Felicitaciones! Has colaborado oficialmente con un proyecto y tu solicitud será agregada si el administrador del proyecto la considera adecuada.

Alternativas a GitHub

Si bien es cierto que GitHub es la plataforma para gestión de proyectos más popular y utilizada del mundo, te quiero presentar algunas alternativas que te podrían interesar.

GitLab

Es la plataforma que quizás más competencia le ofrezca a Github. Es una página donde los usuarios pueden subir sus repositorios y contar con un sistema de seguimiento de errores en el proyecto con un detalle adicional: permite instalar su plataforma en los servidores particulares de quienes la usan, esto para garantizar mayor seguridad y privacidad a los contenidos alojados. Mira nuestra guía de estrategias de distribución en GitLab.

GitLab también proporciona el almacenamiento de repositorios públicos y privados de forma ilimitada y completamente gratuita. Además, tiene soporte para integrarse a cualquier sistema operativo, al igual que en servidores alojados en la nube.

Bitbucket

Creada por Atlassian, esta plataforma permite crear repositorios gratuitos para grupos pequeños de hasta 5 personas. Tiene funciones que la hacen interesante a los ojos de los usuarios, como la posibilidad de poder intercambiar archivos a través de la misma plataforma y poder decidir entre usar el espacio de almacenamiento de sus servidores o instalarlo en tu propio servidor.

SourceForge

Otra gran alternativa para complementar a Github es Sourceforge, una plataforma que permite almacenar repositorios únicamente de proyectos con código abierto. Tiene gran compatibilidad con la mayoría de los lenguajes de programación, por lo que proporciona una gran libertad a los usuarios. Permite también la creación de páginas web estáticas con subdominios, por lo que de esta manera los usuarios pueden mostrar de forma más sencilla los proyectos que llevan a cabo dentro de la plataforma.

Diego
Diego
diegocamachop

14171Puntos

hace 3 años

Todas sus entradas
Escribe tu comentario
+ 2
Ordenar por:
6
2326Puntos

Tenía instalado Github, sin embargo no tenía la menor idea de como utilizarlo.

Ahora ya tengo la noción básica

4
25932Puntos

El curso de Git y GitHub que da Freddy es super bueno, muy recomendado yo no conocía nada de la herramienta y aprendiendo desde cero hoy ya los proyectos que realizo en las clases de los cursos que estoy viendo los subo a GitHub y adicional esta GitHub pages que te permite publicar tus proyectos y tener un url para verlos en la web es genial para crear un portafolio y mostrar lo que has aprendido

3
943Puntos

Excelente post Diego

2
26391Puntos

Aprendí mucho de Github solo en este post

2
26Puntos

Buen aporte! 😁

2
38335Puntos

¡Gracias Diego! Me ha permitido entender mejor la dinámica con GitHub. Súper buena intro para empezar a utilizar la plataforma.