¿Cómo compartir un código PHP en múltiples sitios web / serveres?

Tengo muchos sitios web PHP que están en diferentes serveres (serveres LAMP en la nube). Son sitios web diferentes de clientes diferentes, pero uso un código común en todos ellos. Todo este código común lo puse en Common_Code_Folder, que uso como biblioteca con classs, controlleres, funciones, etc.

La estructura es así:

Server 1 > Common_Code_Folder > Root_Folder > Code Website 1 Server 2 > Common_Code_Folder > Root_Folder > Code Website 2 Server 3 > Common_Code_Folder > Root_Folder > Code Website 3 

Etc …

Estoy buscando una solución más inteligente para implementar esto cuando cambio cualquier cosa en la carpeta Common_Code.

Lo que hago ahora mismo

Cuando cambio cualquier file dentro de la carpeta Common_Code, necesito conectarme en FTP para todos los sitios web y upload la carpeta common_code para todos ellos. Si tengo 15 sitios web, ¡tengo que hacerlo 15 veces!

¿Hay alguna manera de automatizar eso? Tal vez GIT? Tal vez un código de deployment?

Para sincronizar tu código, recomiendo:

  • ponga su código en Common_Code_Folder en un repository GIT.
  • utilizar una secuencia de commands para implementar nuevas versiones extraer nuevo código ( git pull )
  • este script se puede ejecutar manualmente bajo demanda o por cron

Si su código tiene acceso a una database, la secuencia de commands (por ejemplo, un script PHP) también debe

  • comprobar los cambios en la database
  • aplicar migraciones de bases de datos

Luego, su process de implementación automática se ejecuta de forma segura incluso si la database cambia.

Dado que este código común es una especie de biblioteca para su código PHP personalizado, también puede actualizarlo a través del compositor . Luego, su código común se instala en el vendor directory. Esta es una práctica común, por ejemplo, en el marco Yii2 .