Recientemente, he bifurcado el proyecto robmorgan / phinx y modificado el file composer.json en mi proyecto para usar la versión bifurcada:
{ "name": "...", "description": "...", "repositories": [ { "type": "package", "package": { "name": "lube8uy/phinx", "version": "master", "source": { "url": "https://github.com/lube8uy/phinx.git", "type": "git", "reference": "master" } } } ], "require": { "php": ">=5.3.0", "lube8uy/phinx": "dev-master" } }
Primera pregunta: proveedores adicionales
Ahora, cuando cargo el file composer.json en mi proyecto, obtengo esta versión bifurcada correctamente. Lo que no sé es cómo cargar las dependencies del proyecto phinx mismo: https://github.com/lube8uy/phinx/blob/master/composer.json
Si utilizo la fuente original de packagist todo funciona bien y obtuve todas las dependencies, pero ahora que uso mi propio repository no puedo getlas.
Segunda pregunta: actualizaciones
¿Cómo puedo recibir las modificaciones que hice a mi fuente github? Hice algunas modificaciones, los empujé a la twig correcta, luego ejecuté la actualización del compositor pero no se actualizó nada … ¿qué estoy haciendo mal?
Muchas gracias
Para su primera pregunta:
Intente solicitarlo como un repository de VCS (Version Control System, consulte el doc. Del compositor en los repositorys de vcs ), como el siguiente:
{ "name": "...", "description": "...", "repositories": [ { "type": "vcs", "url": "https://github.com/lube8uy/phinx" } ], "require": { "php": ">=5.3.0", "robmorgan/phinx": "dev-master" } }
Ahora requiere el package robmorgan/phinx
que se encuentra en https://github.com/lube8uy/phinx
que es la bifurcación deseada. Todavía tiene el nombre original robmorgan/phinx
pero se encuentra en una location diferente.
Todavía tiene el mismo nombre debido al nombre del package en su composer.json
. Si desea cambiar el nombre a lube8ye/phinx
, cámbielo en composer.json
en la bifurcación.
Para su segunda pregunta:
Los cambios realizados en un package que requiera a través del compositor deberían actualizarse automáticamente cuando ejecute la php composer.phar update
en su proyecto. Si esto no funciona, intente forzar al compositor a que requiera una confirmación específica agregando el hash de confirmación después de dev-master
en su sección de require
así:
"require": { "robmorgan/phinx": "dev-master#1234abcd" }
1234abcd
es el hash de la confirmación deseada.
Además: intente borrar el caching del compositor eliminando el contenido de las carpetas para evitar cargar una versión en caching (consulte el documento del compositor en COMPOSER_CACHE_DIR
)