Aquí está la historia básica: desarrollo un paquete que también uso en proyectos. Esos paquetes se publican en packagist, y cuando los uso en mis proyectos, solo los necesito como cualquier otro paquete.
Cuando los proyectos están en el servidor de desarrollo, todo está bien, obtienen la última versión y simplemente funcionan.
Pero cuando estoy desarrollando, descubro que esperar a que se actualice el paquete y requerir la composer update cada vez que hago algo sobre mi paquete es una pérdida de tiempo... Normalmente, configuraría un repositorio vcs personalizado apuntando a la ruta local en mi disco duro y listo, pero al hacerlo, debo tener en cuenta que tengo que eliminar dicho repositorio local antes de pasar a producción.
Lo que me gustaría lograr (si es posible, o algo que haga lo mismo) es tener algún paquete en la sección require de mi composer.json para usar packagist cuando esté en producción, y tener la sección require-dev solo para utilizar el repositorio local.
¿Es eso posible? Honestamente, no pude encontrar nada relacionado con eso en los documentos... O simplemente leí mal el uso de todo.
Estoy agregando esta solución, pero mantendré la pregunta sin respuesta por un tiempo con la esperanza de una solución estándar.
Básicamente, puedo lograr lo que quería usando este paquete . Lo que hace es ayudarlo a especificar rutas locales para buscar paquetes y pasos cuando está actualizando el compositor. Y dado que esto solo se instala localmente (con composer global ), dejó que el servidor de producción normalmente resuelva el paquete con packagist.