Usar twigs de Git para mantener subdominios de un website

No soy un experto en Git, pero ya lo he visto antes (simplemente no sabía la implementación real detrás de esto).

Tengo mi website principal en www.foobar.com pero quiero tener un subdominio de testing en beta.foobar.com (o si es demasiado complicado, un directory de testing en foobar.com/beta)

¿Hay alguna manera de tener 2 sucursales en mi repository Git que administren el website principal y un subdominio para que pueda hacer todas las testings en beta y cuando encuentre mi código satisfactorio, simplemente pueda combinar beta en la twig principal?

Si estoy pensando en este problema de la manera incorrecta, siéntase libre de proponer una alternativa. ¡Gracias!

Esto es bastante fácil de lograr y no es nada específico de GIT, sino que depende de la configuration de su server web y del process de implementación de su aplicación. 2 sencillos pasos:

  1. Configure su server web para que sirva tanto en http://www.foobar.com como en beta.foobar.com. Sirve los diferentes dominios de diferentes raíces web, por ejemplo, la aplicación principal de /var/www/foobar.com/app/public y el subdominio de /var/www/foobar.com/subdomains/beta/public
  2. Para la implementación, simplemente clone la twig principal en .../app/public directory .../app/public y la twig beta en .../subdomains/beta/public

El process también se puede automatizar con herramientas como Capistrano y la extensión de múltiples etapas .

EDITA en respuesta a tu comentario:

En un proyecto serio que no solo está haciendo por usted mismo, nunca debe actualizar los files que están desplegados actualmente . Aquí está la configuration propuesta:

  1. Tenga un repository de git simple, ya sea accesible en su server o en github.com (o cualquier otro proveedor)
  2. Clona el repository en tu máquina de desarrollo: este es el código en el que trabajarás
  3. Supongamos un cambio en la twig beta: impulsar ese cambio
  4. Ahora puede clonar su twig beta del repository simple en su ruta de implementación para beta
  5. Cuando se sienta listo: inserte la beta en el maestro (en su máquina de desarrollo)
  6. Push master
  7. Implementar el dominio clonando la twig principal del repository desnudo en la ruta de deployment para el maestro

Como se señaló anteriormente, las herramientas como Capistrano simplifican el deployment e incluso pueden mantener un historial de sus diferentes implementaciones. Mire esta publicación, por ejemplo, para ver cómo se usa en las implementaciones de PHP.