我非常感谢任何人分享您为无痛,万无一失的Play框架升级而制定的最佳实践,模式,反模式,备份,回滚流程。
我认为用最新版本替换bin / play目录会导致问题
编辑:
我正在寻找更具体的版本管理策略,比如说,
a)你有/ bin / play目录是否有最新的播放版本或 b)你是否保留像/bin/play-1.1 /bin/play-1.2这样的版本并将你的$ PATH更改为指向最新的版本(缺点:你必须重建你的模块,依赖项和库;专业版:提供更好的控制权回滚)
答案 0 :(得分:6)
我更喜欢使用git:
从源代码安装playgit clone git://github.com/playframework/play.git
cd play
# checkout specific version
git checkout 1.2.1
cd framework
ant
cd ..
ln -s $PWD/play ~/bin
所以我有一个包括所有来源的完整安装。之后,当游戏更新到版本1.2.2时,我执行了以下操作:
cd <play_home>
git pull
git checkout 1.2.2
cd framework
ant
然后在您的应用程序中执行
play clean && play run
从源代码构建中运行游戏的优势在于,您可以始终轻松地回滚到以前的版本,甚至可以测试当前开发中的功能。这并没有解决同时让多个版本的游戏处于活动状态的问题。
答案 1 :(得分:4)
我同意安德烈的观点。但是,如果您要求实时项目的最佳实践,我会采用不同的方式。
您可以在本地计算机上安装多个版本。您唯一需要改变的是路径中可见的一个。例如,你可以有1.1,1.2,2.0,根据你想要的那个,你只需修改你的/home/youruser/.bashrc
文件。
原因,为什么简单更新来自git
或hg
的游戏不起作用/好主意是因为,如果有问题,你必须还原,回滚模块或善良知道什么不是
简单地更换播放版本,重建,广泛测试,一旦你确定一切都很好,那么你可以在现场网站上进行相同的更改。
如果没有锻炼,或者你无可救药地丢失,你所要做的就是将更改恢复到你的项目并切换游戏版本。你会回到你开始的地方。