Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Conceptos de paquetes
Estos son algunos conceptos y términos que debes conocer a la hora de gestionar, publicar o consumir paquetes CodeCatalyst.
Paquetes
Un paquete es un paquete que incluye el software y los metadatos necesarios para instalar el software y resolver cualquier dependencia. CodeCatalyst admite el formato de paquete npm.
Un paquete se compone de:
Espacios de nombres de paquetes
Algunos formatos de paquetes admiten nombres de paquetes jerárquicos para organizar los paquetes en grupos lógicos y evitar colisiones de nombres. Los paquetes que tienen el mismo nombre se pueden almacenar en diferentes espacios de nombres. Por ejemplo, npm admite ámbitos y el paquete npm @types/node
tiene un ámbito y un nombre de@types
. node
Hay muchos otros nombres de paquetes en el alcance @types
. En CodeCatalyst, el ámbito («tipos») se denomina espacio de nombres del paquete y el nombre («nodo») se denomina nombre del paquete. En el caso de los paquetes de Maven, el espacio de nombres del paquete corresponde al ID de grupo de Maven. El paquete Maven org.apache.logging.log4j:log4j
tiene un groupID (espacio de nombres del paquete) de org.apache.logging.log4j
y un artifactID (nombre del paquete) log4j
. Algunos formatos de paquetes, como Python, no admiten nombres jerárquicos con un concepto similar al de npm scope o Maven GroupID. Si no tienes una forma de agrupar los nombres de los paquetes, puede ser más difícil evitar las colisiones de nombres.
Versiones de paquetes
La versión de un paquete identifica la versión específica de un paquete, por ejemplo @types/node@12.6.9
. El formato y la semántica del número de versión varían según los distintos formatos de paquete. Por ejemplo, las versiones del paquete npm deben cumplir con la especificación de control de versiones semántico
Activos
Un activo es un archivo individual almacenado en el CodeCatalyst que se asocia a una versión del paquete, como un archivo npm o un .tgz
archivo MavenPOM. JAR
Repositorios de paquetes
Un repositorio de CodeCatalyst paquetes contiene un conjunto de paquetes, que contienen versiones de paquetes, cada una de las cuales se asigna a un conjunto de activos. Los repositorios de paquetes son políglotas, lo que significa que un único repositorio puede contener paquetes de cualquier tipo compatible. Cada repositorio de paquetes expone puntos finales para obtener y publicar paquetes mediante herramientas como NuGet CLIs (nuget
,dotnet
), Maven CLI (mvn
) y Python CLIs (y). npm
CLI pip
twine
Para obtener información sobre las cuotas de paquetes CodeCatalyst, incluido el número de repositorios de paquetes que se pueden crear en cada espacio, consulte. Cuotas para paquetes
Puede vincular un repositorio de paquetes a otro configurándolo como un repositorio ascendente. Cuando un repositorio está configurado como un repositorio ascendente, puedes usar cualquier paquete del repositorio anterior, así como cualquier repositorio ascendente adicional de la cadena. Para obtener más información, consulte Repositorios ascendentes.
Los repositorios Gateway son un tipo especial de repositorio de paquetes que extrae y almacena paquetes de las autoridades oficiales de empaquetado externas. Para obtener más información, consulte Repositorios de Gateway.
Repositorios ascendentes
Puede utilizarlos CodeCatalyst para crear una relación ascendente entre dos repositorios de paquetes. Un repositorio de paquetes es un repositorio anterior a otro cuando se puede acceder a las versiones de paquetes que contiene desde el punto final del repositorio de paquetes del repositorio descendente. Con una relación ascendente, el contenido de los dos repositorios de paquetes se fusiona de forma efectiva desde el punto de vista del cliente.
Por ejemplo, si un administrador de paquetes solicita una versión de paquete que no existe en un repositorio, CodeCatalyst buscará la versión del paquete en los repositorios ascendentes configurados. Los repositorios ascendentes se buscan en el orden en que están configurados y, una vez que se encuentra un paquete, CodeCatalyst se detiene la búsqueda.
Repositorios de Gateway
Un repositorio de puerta de enlace es un tipo especial de repositorio de paquetes que está conectado a una autoridad de paquetes oficial y externa compatible. Al añadir un repositorio de puerta de enlace como repositorio principal, puede consumir paquetes de la autoridad de empaquetado oficial correspondiente. Tu repositorio descendente no se comunica con el repositorio público, sino que todo está intermediado por el repositorio gateway. Los paquetes que se consumen de esta manera se almacenan tanto en el repositorio de puerta de enlace como en el repositorio descendente que recibió la solicitud original.
Los repositorios Gateway están predefinidos, pero deben crearse en cada proyecto que se vaya a utilizar. La siguiente lista contiene todos los repositorios de puertas de enlace en los que se pueden crear CodeCatalyst y la autoridad de paquetes a la que están conectados.
-
npm-public-registry-gatewayproporciona paquetes npm de npmjs.com.
-
maven-central-gatewayproporciona paquetes Maven del repositorio central de Maven.
-
google-android-gatewayproporciona paquetes Maven de Google Android.
-
commonsware-gateway proporciona paquetes Maven desde. CommonsWare
-
gradle-plugins-gatewayproporciona paquetes Maven de Gradle Plugins.
-
nuget-gallery-gatewayproporciona NuGet paquetes de la NuGet Galería.
-
pypi-gateway proporciona paquetes de Python del Python Package Index.