Git for deployment… or not?
I’ve been reading lots about using git for deployment, but it doesn’t feel right. We’ve used SVN and git for deploying to single servers for years but I still think it’s fiddly and nasty. If I was forced to .jar it all up and deploy it would this make me a cleaner development. I dunno, so I asked StackOverflow.
Posted here.
Hi,
I’ve seen many people use git (or SVN) for deploying their web app projects, be they PHP, Python or whatever. Essentially, you use pull the code from the stable branch to your local server and possible run a few migration updates. Easy.
But I wondered if anyone uses git for deploying to cloud server / clusters. RightScale suggest that while git (actually SVN) can be used for deploying apps to new cloud instances, they prefer zipping up the project code and pushing it to S3. I can see that this is a simpler process to get your head around but are there actual technical advantages to doing this.
Git isn’t actually _needed_ on the live servers, so this might be a good reason not to bother with it.
Also, do you think it’s good practice to use git when deploying to large clusters or do you think that having some “deployment” archive like S3 in the way makes things safer.
What do you think?
Here’s what some other people think:
http://www.brynary.com/2008/8/3/our-git-deployment-workflow
http://blog.fedecarg.com/2008/06/22/database-deployment-using-phing/
http://debuggable.com/posts/deploying-with-git:48faf718-b6c0-4979-89bb-6fa74834cda3