¿Qué es Paquetes de GitHub?
Paquetes de GitHub es un servicio de administración de paquetes que facilita la publicación de paquetes públicos o privados junto al código fuente.
Nota:
Si aún no está familiarizado con GitHub, consulte el módulo Introducción a GitHub Learn.
GitHub Packages es un registro de paquetes
Los paquetes de GitHub permiten compartir las dependencias del proyecto dentro de la organización o públicamente.
Cuando trabaja en un proyecto que tiene dependencias de paquetes, es importante confiar en ellos, comprender su código y conectarse con la comunidad que las creó. Dentro de las organizaciones, también debe poder encontrar rápidamente lo que se ha aprobado para su uso.
Los paquetes de GitHub usan la misma interfaz familiar de GitHub para buscar paquetes públicos en cualquier parte de GitHub o paquetes privados dentro de su organización o repositorios.
Un administrador de paquetes estándar
Los paquetes de GitHub son compatibles con los clientes comunes de administración de paquetes, por lo que puede publicar paquetes con las herramientas que elija. Si el repositorio es más complejo, es posible que tenga que publicar varios paquetes de distintos tipos. También puede usar webhooks o Acciones de GitHub para personalizar completamente los flujos de trabajo de publicación y posteriores a la publicación.
¿Está publicando un paquete de código abierto? Muchos proyectos de código abierto almacenan su código en GitHub, por lo que puede publicar versiones preliminares de los paquetes para realizar pruebas en la comunidad y, a continuación, promover fácilmente versiones específicas al registro público de su elección.
En el momento de escribir, los paquetes de GitHub son compatibles con los siguientes administradores de paquetes:
- npm, un administrador de paquetes de NodeJS
- NuGet, el administrador de paquetes de .NET
- RubyGems, administrador de paquetes de Ruby
- Maven y Gradle, dos administradores de paquetes para Java
Paquetes de GitHub, también un registro de contenedores
Desde las aplicaciones completas a las utilidades de la CLI, los contenedores son otra forma de distribuir código. Los paquetes de GitHub permiten publicar y distribuir imágenes de contenedor. Una vez publicada (en público o en privado), puede usar estas imágenes desde cualquier lugar, entre las que se incluyen:
- En el entorno de desarrollo local
- Como imagen base del entorno de desarrollo de GitHub Codespaces
- Como paso para ejecutar en el flujo de trabajo de integración continua (CI) o implementación continua (CD) con Acciones de GitHub
- En un servidor o un servicio en la nube
Comparación de paquetes de GitHub con versiones de GitHub
Los paquetes de GitHub se usan para publicar versiones de las bibliotecas en una fuente de paquetes estándar o en un registro de contenedor. Están diseñados para aprovechar las formas en que el cliente de administración de paquetes específico funciona con esa fuente, como la vinculación al repositorio en el que se creó el paquete, así como la versión del código que se usó.
Las versiones de GitHub se usan para publicar una agrupación de software empaquetado, junto con notas de la versión y vínculos a archivos binarios. Puede descargar esas versiones directamente desde su dirección URL única y realizar un seguimiento de ellas a la confirmación específica desde la que se crearon. Solo puede descargar versiones como tarballs o archivos ZIP.
Identidad y permisos unificados
Supongamos que está trabajando en un proyecto con GitHub para hospedar código fuente: JavaScript para el front-end, con npm y Java para el back-end. Ahora mantiene al menos tres conjuntos diferentes de credenciales y permisos de usuario: para repositorios de Git, npm y Maven.
Con Paquetes de GitHub, puede usar un único conjunto de credenciales en el repositorio de código fuente, el registro privado de npm y el registro privado de Maven o Gradle. Los paquetes publicados a través de GitHub heredan la visibilidad y los permisos asignados en el nivel de repositorio. ¿Un nuevo miembro del equipo necesita acceso de lectura a un paquete y su código? Solo tiene que darles acceso de lectura al repositorio.
Compilación y publicación de paquetes desde GitHub
Acciones de GitHub es otra característica de GitHub que permite automatizar los flujos de trabajo de software. Puede compilar, probar e implementar el código directamente desde GitHub.
Sugerencia
Si quiere obtener más información sobre Acciones de GitHub, consulte el módulo Build continuous integration (CI) workflows by using GitHub Actions Learn (Compilar flujos de trabajo de integración continua [CI]) mediante Acciones de GitHub .
Al combinar Acciones de GitHub y paquetes de GitHub, puede crear un flujo de trabajo que compilará y probará el código y, a continuación, lo publicará en paquetes de GitHub simplemente insertando código en el repositorio.
En la unidad siguiente, aprenderemos a usar nuestro flujo de trabajo para publicar en Paquetes de GitHub y en GitHub Container Registry.