在版本控制中使用应用程序代码存储Django的好处

Ero*_*eal 5 django version-control upgrade django-models django-south

我正在尝试简单地部署我们的应用程序,并更轻松地管理我们依赖的库和框架的版本.

将Django存储在我们的VCS中是否有意义?理想情况下,这将使我更容易简化部署,并且我可以使用South管理Django对内置应用程序(django.contrib.auth,django.contrib.sites等)所做的任何模型更改.

我有理由不这样做吗?你为自己的应用做了什么?

Ric*_*ber 4

我绝对会把所有东西都存储在你的 VCS 中。想要更新 Django?想要添加插件吗?在几个开发人员和不同环境之间同步可能是一场噩梦。如果版本不同步,不必调试它。如果您需要使用多个 django 应用程序并且它们是不同的版本,会发生什么情况?

您可能想看看以下两篇文章:

我存储 virtualenv 在 SVN 中创建的目录中的所有内容。我的部署脚本基本上包含以下内容:

  • 将项目签出(仅在最初,然后更新)到服务器上的文件夹
  • rsync 到 Apache 提供文件的目录(不包括 .svn 文件夹)
  • 设置该环境的数据库密码和权限
  • 重启乘客
  • 将修订号从工作副本写入部署目录的文本文件(稍后可能会派上用场!)