Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Our company has recently transitioned over to git and github as our main source control. We've gotten all the users setup and everyone is able to push and pull to github just fine. But I'm a little lost on how we should setup our test and production servers (all window machines by the way).

What is the best (or most secure) way to for us to get updated source to our production and test servers? (We do all php/javascript so no need to compile)

I assume we could set them up as remote repositories and push to them the same way we push to github, but I'm not exactly sure how to go about that. If that is indeed the best route to go could someone point me to a good tutorial. (Is there a way to limit who can push to these servers?)

We could also just have someone go to each server and do a pull or fetch request and get the lastest and greatest, but at the moment that would be someone manually updating three servers and possibly more in the future. It seems to me that, that leaves a lot of room for error.


share|improve this question
up vote 1 down vote accepted

I would not suggest git for this -- You can (via automated/scheduled scripts and the like), but you should probably investigate tools like radmind (what I use), Puppet (experimental Windows support) or Windows-Specific equivalents for managing your servers instead.

You can keep your radmind or puppet configuration information in git, but using server-management tools for the server-management tasks will make life easier in the long run.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.