Yii 正确的应用程序版本更新,包括数据库和代码更新

Yii 正确的应用程序版本更新,包括数据库和代码更新,yii,version-control,versioning,rpm,Yii,Version Control,Versioning,Rpm,我得到了一个用YII编写的应用程序,需要不时更新版本。目前,当我们发布一个新的更新时,我们手动运行一个shell脚本,从我们的git repo复制/覆盖应用程序代码/源文件,并设置适当的权限和其他内容,然后在脚本末尾,我们运行一个YII命令来运行数据库更新。我们对数据库更新进行了版本控制。如果某个版本的某个sql语句失败,我们也会回滚对数据库的更改。现在,如果数据库更新失败,并且应用程序代码/源被更新,那么当它尝试访问某些表字段、表或视图时,问题就会出现 如何通过版本控制最好地处理应用程序更新?

我得到了一个用YII编写的应用程序,需要不时更新版本。目前,当我们发布一个新的更新时,我们手动运行一个shell脚本,从我们的git repo复制/覆盖应用程序代码/源文件,并设置适当的权限和其他内容,然后在脚本末尾,我们运行一个YII命令来运行数据库更新。我们对数据库更新进行了版本控制。如果某个版本的某个sql语句失败,我们也会回滚对数据库的更改。现在,如果数据库更新失败,并且应用程序代码/源被更新,那么当它尝试访问某些表字段、表或视图时,问题就会出现

如何通过版本控制最好地处理应用程序更新?很像wordpress处理其更新的方式或更好的方式

想要询问rigth方法的建议,可能包括RPM、GIT或其他信息。 如果你们能提供一份详细的流程清单就好了。
谢谢。

数据库更新可能包括备份和运行多个脚本,以及 应在rpm包装外处理。故障模式太多了 RPM脚本可以完美地处理

您始终可以在包中打包数据库架构更新脚本 然后在应用程序启动时检查架构版本是否正确, 提供有关如何升级的说明(或指向说明的指针) 数据库,以及如何重新安装上一个已知良好的应用程序,当错误 检测到架构版本