You are on the right track here. If you are going to be doing development, it is absolutely essential that you work on a copy of Moodle, and only update the live server when everything is done and tested.
Each developer ought to have a place where they can set up their own copy of Moodle to do active development, and where they can set up test courses and users, fiddle with admin settings, and so on. (And, if their development completely screws up the system, they can wipe it and reinstall.)
Then, you need a test server, that is a copy of your live server. This is where you get together the end result of all the different developers' work, and make sure your live site will work when you upgrade it.
As for how to make a copy of your live site, the procedure is basically the same as moving a Moodle system, which is explained on
Moodle migration (except that you leave the live system in place, so it is a copy, not a move).
If you are doing any sort of development, I hope it goes without saying that that you are using version control on the source code. That is the only sane way to track all the changes that different people are making, and also to help you combine the changes that are made in the standard version of Moodle with your changes.
If your are not using version control yet, then please buy yourself and your team a copy of either
Pragmatic Version Control Using Git, or
Pragmatic Version Control using CVS.
The choice is that
git is more modern, and much better, particularly when it comes to combining your local changes with changes in standard Moodle. However, to use it you mostly have to use the command line.
CVS is older, and a bit clunky at the back end, but you can get GUI programs like TortioseCVS and IDEs like Netbeans and Eclipse have CVS built in.