Я не думаю, что вы многого выиграете, если сохраните Django в системе контроля версий, если вы не используете модифицированную версию Django.Похоже, вы работаете с другими разработчиками, поэтому определенно сохраняйте код, над которым вы работаете, в некоторых VCS (даже при работе в одиночку есть множество преимуществ).
Для развертывания приложения вы можете найти, что его стоит собратьпакет distutils, который может указывать его зависимости (например, конкретная версия Django).Использование virtualenv поможет отслеживать зависимости.
Я бы предложил, чтобы при выпуске на рабочий сервер вы "помечали" каждый выпуск и затем экспортировали его в свою производственную систему, а не проверяли его.Это помогает остановить людей, обновляющих вещи в теге и обновляющихся из-за контроля версий.
Еще одна вещь, которую я думаю стоит сделать при выпуске в производственную систему, - это создание нового каталога для каждого экспорта кода, который включает в себя:номер выпуска, затем укажите символическую ссылку, указывающую на активную версию.Это позволяет вам легко вернуться к предыдущей версии.Юг, который вы упомянули, также очень полезен для этого.