我想要这样的效果: 当 release 完后在本地执行一个命令,然后系统自动通过 ssh 登录到远程服务器,进入到项目目录,然后更新 master 下的代码;检测 db/migrate 下有没有更新,如果有的话执行 migrate;检测 assets 有没有更新,有的话自动编译;最后重启服务器。 这样的需求该怎么样做比较好?用 Capistrano?
还有一个疑问:Capistrano 在部署的时候会建立了类似 current/ , releases/ 的目录结构,然后把每次 release 的项目都保存在 releases/ 下面,而我是用 git-flow 在每次 release 完后就打 tag,出了问题就 reset 到指定的 release tag,不知道大家一般是怎么样做的,求指教,谢谢:)