import Patch from "/es/snippets/cli/patch.mdx";
bun patch te permite parchear node_modules de forma persistente de manera mantenible y amigable con git.
A veces, necesitas hacer un pequeño cambio a un paquete en node_modules/ para corregir un bug o agregar una característica. bun patch hace fácil hacer esto sin vender todo el paquete y reutilizar el parche a través de múltiples instalaciones, múltiples proyectos y múltiples máquinas.
Características:
- Genera archivos
.patchaplicados a dependencias ennode_modulesal instalar - Los archivos
.patchpueden confirmarse en tu repositorio, reutilizarse a través de múltiples instalaciones, proyectos y máquinas "patchedDependencies"enpackage.jsonmantiene un registro de paquetes parcheadosbun patchte permite parchear paquetes ennode_modules/mientras preservas la integridad de la Caché Global de Bun- Prueba tus cambios localmente antes de confirmarlos con
bun patch --commit <pkg> - Para preservar espacio en disco y mantener
bun installrápido, los paquetes parcheados se confirman en la Caché Global y se comparten entre proyectos cuando es posible
Paso 1. Preparar el paquete para parchear
Para comenzar, usa bun patch <pkg> para preparar el paquete para parchear:
# puedes suministrar el nombre del paquete
bun patch react
# ...y una versión precisa en caso de que múltiples versiones estén instaladas
bun patch react@17.0.2
# o la ruta al paquete
bun patch node_modules/reactNota
¡No olvides llamar a bun patch <pkg>! Esto asegura que la carpeta del paquete en node_modules/ contenga una copia fresca del paquete sin symlinks/hardlinks a la caché de Bun. Si olvidas hacer esto, ¡podrías terminar editando el paquete globalmente en la caché!
Paso 2. Probar tus cambios localmente
bun patch <pkg> hace seguro editar el <pkg> en node_modules/ directamente, mientras preserva la integridad de la Caché Global de Bun. Esto funciona recreando un clon desenlazado del paquete en node_modules/ y comparándolo con el paquete original en la Caché Global.
Paso 3. Confirmar tus cambios
Una vez que estés satisfecho con tus cambios, ejecuta bun patch --commit <path or pkg>.
Bun generará un archivo de parche en patches/, actualizará tu package.json y lockfile, y Bun comenzará a usar el paquete parcheado:
# puedes suministrar la ruta al paquete parcheado
bun patch --commit node_modules/react
# ... o el nombre del paquete y opcionalmente la versión
bun patch --commit react@17.0.2
# elige el directorio para almacenar los archivos de parche
bun patch --commit react --patches-dir=mypatches
# `patch-commit` está disponible para compatibilidad con pnpm
bun patch-commit react