Despliegue de proyectos PHP

Me gustaría implementar nuestros proyectos de php , pero no sé cómo ir con nuestro proyecto típico.

Nuestro proyecto se basa en nuestro CMS . Personalizamos el CMS con extensiones (complementos) y templates personalizadas . El núcleo de CMS y las extensiones de CMS están en SVN. La personalización significa que realizamos algunos cambios en las templates sin comprometernos con SVN. Si la versión de SVN cambia, podemos actualizar el proyecto a una versión actualizada, pero generalmente algunos conflictos boostán …

¿Existe alguna manera fácil de tener versiones actualizadas de CMS / extensiones en proyectos personalizados? ¿Se está implementando con Phing o Capistrano de la manera correcta?

Por favor, dame algunos consejos, páginas, etc. con temas similares. Muchas gracias.

Debo señalar que su forma de manejar los proyectos va completamente en contra de la forma en que debería usarse el control de versiones. Siempre debe poder realizar cambios; de lo contrario, sus versiones no se conservarán.

En su pregunta de implementación, diría que investigue rsync . Phing es también una excelente solución.

Este es un sistema de compilation que creamos con phing y reemplazamos nuestro sistema de implementación de capistrano. Usamos Git exclusivamente y muchos de nuestros proyectos utilizan los mismos procedimientos de compilation, por lo que queríamos un sistema que pudiéramos agregar a cualquier proyecto como un submodule de git y comenzar a build / implementar de inmediato. Puedes utilizarlo y bifurcarlo si quieres.

https://github.com/CodeMeme/Phingistrano

Cree un nuevo repository para cada proyecto y use SVN Externals para include el núcleo de CMS en su repository de proyectos. No comprometer el código es un gran error.