Ruby 提交时在dev/QA服务器上自动化git拉取过程

Ruby 提交时在dev/QA服务器上自动化git拉取过程,ruby,git,ruby-on-rails-3,deployment,github,Ruby,Git,Ruby On Rails 3,Deployment,Github,我的rails应用程序托管在github上。每当“dev”分支上发生提交时,我都希望在dev框上执行git pull,并调用“/etc/init.d/apache2 restart”命令。这是我可以通过Capistrano部署来完成的吗?还是我可以编写某种自定义shell脚本,并在rails应用程序中以某种方式钩住该shell脚本以调用该shell脚本?您需要在git服务器上设置一个post接收钩子,从而在开发框上引发git拉动。“git deploy with post receive”的快速

我的rails应用程序托管在github上。每当“dev”分支上发生提交时,我都希望在dev框上执行git pull,并调用“/etc/init.d/apache2 restart”命令。这是我可以通过Capistrano部署来完成的吗?还是我可以编写某种自定义shell脚本,并在rails应用程序中以某种方式钩住该shell脚本以调用该shell脚本?

您需要在git服务器上设置一个post接收钩子,从而在开发框上引发git拉动。“git deploy with post receive”的快速DAFS找到了很多资源,如


我个人更喜欢使用像Jenkins这样的构建系统,因为它可以给你更多的控制和可见性。我们已经使用Jenkins和github post接收钩子建立了一个连续部署系统,并且没有太多麻烦。另一个优点是,通过链接作业,您可以在自动部署(如果通过)之前运行测试。

所说的“每当“dev”分支上发生提交”实际上是指“每当“dev”分支被推到时”?是的,每当我推到“dev”分支时。