Si Composer no se puede instalar en el server de producción, ¿está bien hacer un seguimiento de la carpeta del proveedor en Git?

Según entiendo, con cualquier proyecto que use Composer, la forma correcta de implementar en el server de producción es no hacer un seguimiento de la carpeta del vendor en Git, sino ejecutar Composer en el server de producción y dejar que recupere todos los packages necesarios y llenar el vendor carpeta para ti. En primer lugar, ¿tengo algo en lo cierto? (Esto puede sonar como una pregunta estúpida, pero nadie me lo ha dicho explícitamente)

En segundo lugar, mi server de producción es un entorno de hosting compartido barato, no un shiny y caro cuadro AWS o Ocean Digital, por lo que no puedo instalar Composer en el entorno de producción. Por mucho que me gustaría hacer las cosas de la manera ideal , no puedo. Entonces, es la siguiente mejor opción para seguir la carpeta del vendor en Git y desplegar los packages de esa manera. Entonces, en el futuro, si actualizo a un package de alojamiento con más flexibilidad, puedo dejar de seguir la carpeta del vendor y comenzar a hacer las cosas de la manera ideal.

Su comprensión de cómo se supone que se usará el map del proveedor es correcta.

Para su segunda pregunta, solo elegiría su solución como último recurso; está lejos de ser ideal. Su repository necesitará actualizar constantemente con cambios de terceros.

En tu caso, preferiría:

  1. Instala php, compositor y git localmente. Esto es posible en Windows, OSX y Linux.
  2. Refleje su sitio localmente y realice las actualizaciones del compositor allí.
  3. Copie las actualizaciones a través de FTP (o lo que sea que use) en su sitio de producción.

Esto mantiene su repository compacto y manejable. Solo debe realizar sus propios cambios en el repository.

Si, en cualquier momento en el futuro, puede ejecutar git en el server, puede seguir usando el repository sin tener que borrar todo el map del proveedor.

Sí, así es como la gente suele usar el compositor.

Si tiene acceso de shell en este server, puede usar fácilmente el compositor. Simplemente incluya composer.phar en el repository, luego puede ejecutar la installation de php composer.phar install en su server compartido.

Puede get el último compositor de su website ( https://getcomposer.org/download/ ).

Si no tiene acceso al shell, puede poner el proveedor en git, pero prefiero copyr el proveedor manualmente a través de FTP, que almacenarlo en git. Supongo que, dado que usas git en tu server, tienes acceso de shell, y ese no es el caso;)