Git: todos los files están en un subdirectory, pero deben ser de nivel superior

Esta es la anatomía de un plugin de wordpress:

.twitter-plugin |-images/ |-index.php +-README 

El directory twitter-plugin debe colocarse en una location conocida ( wp-content/plugins ) para que WordPress pueda escanearlo y, si encuentra un README , README un complemento válido. Lamentablemente, cuando plugins directory de plugins y clono un repository de Gitorious, obtengo:

 .twitter-plugin +-twitter-plugin |-images/ |-index.php +-README 

El desarrollador del complemento no colocó los files directamente en el directory de nivel superior, sino que los mantiene en un subdirectory que lleva el nombre del proyecto. De esta forma, WordPress no puede encontrar el complemento (busca twitter/README , en su lugar está twitter/twitter/README ). Podría superar esto clonando un directory anterior (en wp-content lugar de wp-content/plugins ) pero se siente hackish, tiene la clara desventaja de que tendré que ignorar todos los otros directorys de complementos, además, Git se quejará de que los plugins/ directory ya existe (así que tendré que mover cosas temporalmente para que funcione).

¿Hay alguna manera de recuperar esta situación? ¿Me estoy perdiendo algo fundamental sobre git?

En este momento, todo lo que creo que puedo hacer es iniciar un nuevo repository, poner los files y tratar de importar la historia de alguna manera. Pero de esta manera no podré avanzar al repository original, ¿verdad? – porque todas las routes de files serían diferentes

Mi objective es desarrollar el complemento, no solo usarlo. Por supuesto, para desarrollar el complemento, debe ser utilizado por alguna installation de WordPress, por lo que debe estar en el directory conocido, de lo contrario, mi installation de desarrollo de WordPress no lo encontrará y no podré probar mis cambios.

Clona en una location fuera de tu proyecto wordpress, luego haz un enlace simbólico o copy el directory correcto al que pertenece, por ejemplo:

 $ git checkout git@wherever.org:twitter-plugin $ cd my-wordpress-site $ ln -s ../twitter-plugin/twitter-plugin ./twitter-plugin 

El enlace simbólico puede funcionar o no, ya que no todas las funciones PHP los siguen; si no es así, intente copyr en su lugar. Esto significa, sin embargo, que debes copyr nuevamente cuando actualizas el git repo; es probable que desee include este procedimiento en su secuencia de commands de implementación.