¿Cómo defino una revisión explícita de SVN para un repository de Composer?

Intento include la biblioteca google-api-php-client en mi proyecto utilizando Composer. La forma más simple es get la biblioteca de la twig de enlace VCS, pero creo que no es la mejor idea en mi caso. Mucho mejor será apuntar a algún estado de biblioteca estable (label o revisión). Mientras que no hay tags disponibles, get una revisión svn particular es la única opción. Pero no tengo idea de cómo hacer esto.

Probé diferentes configuraciones de packages sin éxito, algo como esto:

{ "repositories":[ { "type":"package", "package":{ "name":"project/google-api-php-client", "version":"0.2.1", "source":{ "type":"svn", "url":"http://google-api-php-client.googlecode.com/svn", "reference":"trunk/?r=515" } } } ] } 

Si es posible revisar la revisión svn con el compositor? Gracias por adelantado.

Al usar un repository de packages cuando está definiendo la versión, puede especificar una revisión en la reference. Un ejemplo de mi wordpress composer.json

 { "repositories": [ "type": "package", "package": { "name": "wordpress-plugin/wp-minify", "type": "wordpress-plugin", "version": "1.2", "source": { "type": "svn", "url": "http://plugins.svn.wordpress.org/wp-minify", "reference": "trunk@691320" }, "require": { "composer/installers": "~1.0" } } ] } 

Esto instala el complemento desde el troncal con una revisión explícita de 691320 .

La versión se puede configurar en la parte require (que no se muestra).

Las únicas opciones de SVN disponibles son:

 { "repositories": [ { "type": "vcs", "url": "http://svn.example.org/projectA/", "trunk-path": "Trunk", "branches-path": "Branches", "tags-path": "Tags" } ] } 

Parece que quiere usar un package, pero también podría definir este repository y require la versión adecuada (¿puede labelr? Es más fácil).

También podría tratar de poner la revisión en el parámetro de version , pero no creo que eso funcione.

Además, la documentation indica que sobre la ruta "troncal":

Como Subversion no tiene un concepto nativo de twigs y tags, Composer asume por defecto que el código se encuentra en $ url / trunk, $ url / branches y $ url / tags. Si su repository tiene un layout diferente, puede cambiar esos valores.