We use a Git repository coupled with Webistrano.
Git allows for the developpers to manage their code in a decentralized fashion and with all the advantages of a VCS.
Webistrano allows the developpers or appropriate managers to push the code onto a developpement platform then onto the production platform by just clicking into a web interface. It is a tool designed for RoR environments but it will work with a little customization in just about any environment. Another advantage of Webistrano is that it allows for easy rollbacks in case of deployment failures which is a very nice feature.
As a sysadmin, I can't live without webistrano any more. It allows me to stop worrying about developpers (or sysadmins !) doing stupid things to production servers during the deploy. It is automated and straight forward. One other big advantage is that developpers don't need a sysadmin to push code in a clean way, they just click along.
More info on Webistrano : here.