Как нескольким разработчикам работать над одним сайтом?
по разному.
если двое - легко координироваться, мало чем отличается от "в одного".
если у каждого своя сфера деятельности (отдельно бэкенд, отдельно фронтенд), то по сути это разные проекты. точка контакта у них только 1 - API
вести изменения через git/etc рекомендуется даже и "в одного" работая.
ну а для группы это тем более практично - мало ли кто там сделает несовместимые изменения (не по злу, а по невнимательности), можно будет их найти.
выкатка на боевой сервер - в простейшем случае делает 1 ответственный
в более современном и более навороченном варианте с DevOps - любой может деплоить используя настроенную систему деплоя (в простейшем случае Ansible/etc)
вопрос слишком общий, поэтому и ответ общий.
сформулируйте более конкретные вопросы.
P.S.:
Если хотите, чтобы софт сам за вас все делал - то положитесь на PaaS+Git (например, Heroku + BitBucket)
Посмотрите что такое Git и Github, вы можете сечас сделать коммит вашего проекта потом разойтись на разные бранчи для создания фич итд, то есть вы должны зайти в папку вашего кода и сделать git init
git add .
git commit -m "inital commit"

Потом когда вы создадите репозеторийй в Github будет инструкция как добавить remote origin и запушить код
Далее вы делаете:git checkout -b alexandr

После изменений делаете 

git add 
git commit -m "добавил админку"
И ваш коллега тоже должен делать только в git checkout -b поставить другое имя, вы после пушинга должны будете делать git merge, git pull итп... но об этом вам уже расскажут на урокам по Git :)