我是ruby on rails 的新手,我想使用git来更新我的应用程序等……问题是有太多教程,每个教程都不一样,这让我感到困惑……
那么,是否可以在我的ec2 实例中添加一个git 服务器并在我想要推送新代码并自动在站点中看到时从我的本地计算机管理它?
如果没有这种方法的任何解决方法?
有更好的方法吗?
我是ruby on rails 的新手,我想使用git来更新我的应用程序等……问题是有太多教程,每个教程都不一样,这让我感到困惑……
那么,是否可以在我的ec2 实例中添加一个git 服务器并在我想要推送新代码并自动在站点中看到时从我的本地计算机管理它?
如果没有这种方法的任何解决方法?
有更好的方法吗?
我建议您首先设置 Capistrano 以使您能够自动化部署应用程序的过程:
https://github.com/capistrano/capistrano
一旦您设置了 Capistrano 并验证它可以成功地将您的应用程序正确部署到您的 EC2 实例,那么您有很多选择。最简单的方法是在您推送并想要部署到 EC2 实例时运行 cap deploy。
您不需要在 EC2 实例上托管 git 服务器,但没有什么能阻止您这样做。如果您确实在 EC2 实例上托管 git 服务器,那么您可以在推送时使用 git 挂钩自动运行 capistrano 部署:
http://git-scm.com/book/en/Customizing-Git-Git-Hooks
如果您将其设置为在推送时自动部署,那么我会确保您在与设置 Capistrano 进行部署的分支/主服务器不同的分支中进行开发工作,这样您就不会意外地将不稳定/错误的开发代码部署到您的现场直播。
对于较大的项目,我建议设置一个 CI 服务器来运行项目的单元测试,自动部署应用程序。