2012-03-09 27 views
6

He pasado la última semana leyendo en Git e intentando descubrir cómo adaptarlo a nuestra empresa. Hay un lote de información, y entre otros recursos encontré el Pro Git book muy útil. Sin embargo, una cosa que sigue siendo un misterio para mí (tampoco está en el libro), es cómo "vincular" el repositorio de Git a nuestros servidores de producción.Despliegue de código en servidor (es) de producción desde Git

Nuestra configuración actual consiste en un servidor SVN, al que todos nos comprometemos (descubrí que esto se puede igualar configurando un repositorio Git desnudo en una ubicación compartida y empujándolo). Nuestros servidores de producción (hay varios clientes que ejecutan la misma base de código PHP) son actualmente copias de trabajo SVN, que actualizamos manualmente de a una por vez ejecutando svn up.

¿Cuál sería la mejor manera de abordar esto en Git? Pensé en agregar los servidores de producción como controles remotos en mi repositorio de Git and pushing to them, pero creo que esto podría crear una confusión potencial si los diferentes servidores obtienen diferentes historiales de inserción (esta sería una ocasión en la que realmente necesitaría que se centralizara, supongo). ¿O necesita usar una herramienta como https://github.com/mislav/git-deploy?

no puedo evitar sentir los desarrolladores Git 'no había pensado en esto' .. espero que me falta algo :)

+0

Hola, tengo una pregunta rápida. Solo quiero verificar No estaba seguro de si eso era correcto, pero está completamente bien y deberías tener un repositorio git en tu servidor de producción para enviar tus archivos ¿verdad? Me refiero a que esta pregunta responde sutilmente, pero realmente quiero decir que sí, jaja. Lo aprecio. – Andy

Respuesta

6

se puede lograr el mismo flujo de trabajo con Git. Configure un repositorio simple al que todos presionen su código y clonen ese repositorio en su servidor de producción. Cuando algo ha sucedido y desea actualizar su informe de producción, simplemente haga "git pull" en lugar de "svn up".

Este es un buen comienzo para poner en marcha las cosas. Después de un tiempo, es posible que desee automatizar esto y puede hacer muchas cosas interesantes con, por ejemplo, git hooks.

+0

Gracias, eso es útil. – Rijk

+0

Esto también podría ser interesante para usted: [Un flujo de trabajo de Git centrado en la web] (http://joemaller.com/990/a-web-focused-git-workflow/) – hakre

+0

@hakre de hecho una demostración interesante de scripts de gancho (aunque no me gustaría ir con este flujo de trabajo, ya que nunca modificamos directamente el código en los servidores de producción) – Rijk

Cuestiones relacionadas