Desarrollo mi complemento en github, pero cuando se trata de la implementación, tengo que copiar de alguna manera mis cambios en Wordpress SVN . Actualmente hago esto manualmente y copio sobre cada archivo en cada directorio individualmente, pero esto lleva mucho tiempo y es propenso a errores.
He visto e intentado algunos scripts, pero creo que debo ejecutarlos incorrectamente, ya que producen errores o no copian los archivos correctamente.
Entonces mi pregunta es si alguien ha logrado esto automáticamente y, si es así, ¿cómo lo hizo?
¡Gracias!
Respuestas:
vea este tutorial de un compañero de trabajo de mi equipo: http://www.farbeyondprogramming.com/2011/09/81-how-to-deploy-a-wordpress-plugin-with-git-svn
pero no usa la solución, es más fácil trabajar por separado :(
fuente
Después de leer estas respuestas, introduje uno de mis complementos en GitHub y escribí un script release.sh . Este script obtiene un pago parcial de mi complemento desde plugins.svn.wordpress.org usando
--depth immediates
y actualiza los archivos entrunk/
yassets/
. Esto debería simplificar un impulso periódico a svn, utilizando el repositorio de wordpress.org para etiquetar lanzamientos en lugar de mantener el historial de desarrollo:Una versión más genérica podría funcionar con una variedad más amplia de complementos, manejar archivos eliminados y actualizar etiquetas svn automáticamente basadas en etiquetas git.
fuente
Consulte Cómo publicar un complemento de WordPress - Git de @EAMann para obtener una descripción detallada.
fuente
La pregunta era antigua pero ahora la solución ahora está disponible con acciones de GitHub. Recientemente, GitHub agregó Github Actions al flujo de trabajo automatizado para el repositorio de GitHub.
Y la conocida compañía 10up creó la "Implementación de plugins de WordPress de acción".
Es muy fácil de configurar. Y según @otto dice que no necesitamos empujar cada cambio a svn, así que podemos configurar la automatización mientras creamos una nueva etiqueta en github.
Entonces, nuestro complemento github automáticamente inserta el código en el repositorio de WordPress cuando creamos una nueva etiqueta de lanzamiento.
Enlaces útiles:
fuente
No lo hago automáticamente, pero es bastante simple:
Haga que el camión SVN y el maestro Git se retiren en el mismo directorio. Use Git para casi todo, como lo haría con cualquier proyecto solo de Git.
Establezca el valor
stable tag
de sertrunk
, y luego, cuando esté listo para hacer un lanzamiento, etiquételo en Git y luego presione inmediatamente al tronco. No se preocupe por pasar a SVN/tags
, ya que su historial de versiones está seguro en Git (y Github).Eso es todo.
Para limpiarlo, agrego
.svn
a.gitignore
, y.git
(ytests/
,phpunit.xml
, etc.) para ser ignorado por SVN.Un script release.sh realmente no sería más que lo siguiente (una vez que se haya actualizado el número de versión en el código, y todo se haya comprometido con Git):
fuente