Urdu Español
English English Deutsch Deutsch Español Español Français Français Italiano Italiano Nederlands Nederlands Português Português Русский Русский Ελληνικά Ελληνικά
Login



 

Copia de trabajo de Joomla! extensión

Demostración
Descargas
Joomla! 1.5
Versión 1.0.1
Descargar
Foro
Tutorial
Googlecode

Resumen

Se trata de una especie de Subversion para Joomla! viven sitio. GSoC 2009 ideas de proyectos: copia de trabajo de Joomla sitio en vivo

Idea y Beneficios

Los administradores por lo general trabajan en su sitio en vivo directamente y, a veces lo hacen todos los errores que la gente hace. Como resultado, el sitio en vivo se cometa un error después de la extensión de instalación / desinstalación de procesos y re-configuración. La idea es tener una copia de trabajo del sitio en vivo y hacer cambios en ella, entonces, si todo va bien después de algunas pruebas, puede aprobar los cambios y la herramienta que se aplican a su sitio web.

Me gustaría también poner en práctica algunas de las características fundamentales de Subversion en este proyecto, por ejemplo comprometerse / aprobar, actualizar / sincronizar, volver, unir, crear el parche, aplique el parche (SVN operaciones después).

Con esta herramienta, la gente va a hacer menos errores en el sitio en vivo y obtener menos nervioso!

Hitos

La creación de una API y la interfaz será necesario para completar este proyecto. Ambos se desarrollarán de forma simultánea para realizar pruebas de poder de la interfaz. Voy a seguir las ideas principales y las normas de codificación de Joomla! Marco de la esperanza de que será una parte de Joomla! 1.6 en el futuro.

Durante el proceso de desarrollo voy a suponer que el sitio en vivo (maestro o padre de familia después) y la copia de trabajo (después del niño) se están ejecutando en las mismas versiones y configuraciones de sistema operativo / Apache / MySQL / PHP, y la configuración del servidor se quedará intacto ( esta herramienta puede ser sólo un entorno de prueba para la SERVIDOR re-configuración).

Ahora voy a describir, en general, lo que será y lo fácil que será para trabajar. Estos son algunos pasos que los administradores pueden hacer:

  1. Crear el mayor número desde el maestro del niño para trabajar en ellos (administrador puede crear incluso un niño grande)
  2. Modificar el niño (re-configurar, añadir / editar el contenido, instalar / desinstalar / actualizar las extensiones) y la prueba (que puede tener un "bot espía" si es necesario en el niño para determinar los cambios realizados con facilidad)
  3. Aprobar cambios en el sitio en vivo con una de estas opciones:
    1. Crear un parche por parte del niño
    2. Aplique el parche en el maestro
    3. Directamente aprobar los cambios en el patrón (en realidad, lo que puede hacer a continuación 3.1 3.2, en un solo paso)
  4. Ver los cambios hechos en el niño
  5. Sincronizar el niño con el padre (cuando el niño está fuera de fecha)
  6. Volver al niño a la madre patria
  7. Combinar los sitios 2 (maestro-niño o niño-niño) con la integridad referencial

Hay posibilidades 2 hacer cambios en la comunidad de Joomla! página, que es cambiar la base de datos y / o sistema de archivos. Así que habrá tipos 2 de funciones de la API, lo que hará cambios en la base de datos y el sistema de archivos.

Trabajar con el sistema de archivos es la parte más fácil, porque cada archivo tiene fecha de última modificación, lo que hace fácil determinar qué archivo es más reciente.

Trabajar con la base de datos es mucho más complicado, porque no puede haber diferentes escenarios de las relaciones.

Mi meta es hacer una API, que llevará a cabo actividades de SVN, no sólo a las tablas principales, sino también a 3rd tablas del partido, lo que puede venir con 3rd extensiones del partido.

Las mejoras futuras

También es posible tener una tabla de historial (#tablename_history) para cada tabla en la db, lo que mantendremos las versiones de fila de tabla en el mismo. Esto permitirá a versiones de la base de datos completa. No sólo el contenido, sino también los parámetros, las posiciones de los módulos, etc que esté versionado. La otra cosa, que se puede hacer, es tener tablas de idiomas y de mantener las traducciones de fila de tabla en ellos.

Línea de tiempo

20 abril - mayo 17: TIEMPO DE HABLAR CON EL MENTOR
Semana 1 mayo 18 - 22: La interfaz y funciones de la API para hacer que un niño de maestro. (1)
Semana 2 mayo 25 - 29: Funciones de la interfaz y la API para ver los cambios realizados sobre el trabajo infantil. (4)
Semana 3 junio 1 - 5: La interfaz y funciones de la API para revertir el niño. (6)
Semana 4 junio 8 - 12: La interfaz y funciones de la API para sincronizar el niño. (5)
Semana 5 junio 15 - 19: La interfaz y funciones de la API para crear un parche. (3.1)
Semana 6 junio 22 - 26: Funciones de la interfaz y el API para aplicar el parche. (3.2, 3.3)
Semana 7 29 junio - julio 3: PREPARACIÓN PARA LA EVALUACIÓN INTERMEDIA
Semana 8 julio 6 - 10: PRESENTACIÓN DE LA EVALUACIÓN INTERMEDIA
Semana 9 julio 13 - 17: La interfaz y funciones de la API para fusionar los sitios 2. (7)
Semana 10 julio 20 - 24: Tiempo reservado
Semana 11 julio 27 - 31: Tiempo reservado
Semana 12 agosto 3 - 7: PREPARACIÓN PARA LA EVALUACIÓN FINAL, TODO LO QUE PONER EN SUS LUGARES
Semana 13 agosto 10 - 14: Lápices ABAJO, RESULTADOS En resumen, escribir documentación
Semana 14 agosto 17 - 21: PRESENTACIÓN DE LA EVALUACIÓN FINAL
Agosto 22 - 25: LA HORA DE LA decisiones de última hora

Webinar

Haga clic para escuchar el texto resaltado!