4

I'm planning to be using vagrant soon to easily manage the server configuration for a web application across multiple programmers. Though I am wondering what the best practices are on spreading the box to co-workers? I'm worried that if I include the box within git version control, git will become huge. I thought it would be better to just put the provisioning file within git and spread the box through HTTP. If the box ever gets 'lost', we can still rebuild the box from the provisioning file.

Is this a good idea? Is there a better work flow or instead should I not worry about the size of the git repository?

Kara
  • 6,115
  • 16
  • 50
  • 57
mauserrifle
  • 604
  • 1
  • 7
  • 17

2 Answers2

3

That is a completely reasonable idea. If the provisioning file allows you to rebuild the box from a vanilla template (ideally, a public one), just version control the file itself, and not the box.

In general, git performs well on most repositories. That isn't true for large repositories containing huge binary files. If you believe you'll be replacing that base box often, avoid the version control and just make downloading it one step in your application's setup.

Christopher
  • 42,720
  • 11
  • 81
  • 99
  • Yes I think there will be lots of updates on the road. I will make the downloading a step within the setup. Think that's the best thing to do. Thanks for your time! – mauserrifle Sep 25 '12 at 18:13
0

Indeed, I could be wrong but I think the whole idea of boxes is providing a template on which you can build your environnement, a starting point. Changes to the env should be made in the vagrant file and dispatched via git. Configuration can be shared easily but not via boxes afaik.

medmek
  • 201
  • 3
  • 8