We have a Drupal website that is running on a dedicated Linux machine. The website is in two languages and the database is pretty big (3gbs approximately).
There will be 3 php developers, a designer and a tester working on it. We need a staging platform where the updates can be shown to client securely and the files be uploaded on real website from there. if needed, the files on real website can be rolled back to a previous version and so on.
Basically, we need a system where coders do not upload the files to the real website and that the staging platform has a complete replica of the original website. We are ready to do with a parallel domain or any other suggestion if you may have.
Absolute experience in the same methodology is a must.