¿Qué es el almacenamiento en caché binario?
El almacenamiento en caché binario es una característica que permite a vcpkg guardar los archivos compilados de un paquete en una ubicación compartida y reutilizarlos cuando se le pida que compile el mismo paquete con la misma configuración. Llamamos a la salida generada por cada paquete que crea un "paquete binario".
¿Por qué usar el almacenamiento en caché binario?
La mayoría de los puertos del registro mantenido por vcpkg se compilan a partir del origen. La compilación a partir de origen garantiza la máxima compatibilidad mediante el uso del mismo entorno, herramientas de compilación y configuraciones que se usan para el proyecto en las dependencias. Sin embargo, esto también puede dar lugar a compilaciones duplicadas cuando varios proyectos, desarrolladores o máquinas requieren las mismas dependencias.
Las cachés binarias se pueden hospedar en diversos entornos. La forma más básica de almacenamiento en caché binaria es un directorio que contiene archivos comprimidos de la salida de compilación de un paquete. Entre los escenarios más avanzados se incluyen fuentes de paquetes NuGet hospedadas en Paquetes de GitHub, Artefactos de Azure DevOps u otros servicios de este tipo.
El almacenamiento en caché binario es especialmente eficaz en escenarios en los que las dependencias y la configuración no cambian a menudo, como en CI (integración continua) o servidores de compilación. Los paquetes binarios son especialmente susceptibles a los cambios de configuración (versión del compilador, marcas de compilación, herramientas instaladas o cambios de script específicos de vcpkg), lo que dificulta el uso compartido entre máquinas de desarrollador. Consulte vcpkg export
para obtener una opción diferente para compartir paquetes creados.
Consulte la documentación de referencia de almacenamiento en caché binaria para obtener información sobre los diferentes back-end de almacenamiento.
Pasos siguientes
Estas son otras tareas que se van a probar a continuación:
- Cambiar la ubicación predeterminada de la caché binaria
- Configuración de una caché binaria local
- Configuración de una caché binaria mediante una fuente NuGet
- Configuración de una caché binaria en el flujo de trabajo de Acciones de GitHub mediante paquetes de GitHub
- Configuración de una caché binaria en el flujo de trabajo de Acciones de GitHub mediante la caché de acciones de GitHub
- Autenticación en fuentes de NuGet privadas