我可以在没有SCM的情况下部署Capistrano吗?

时间:2014-06-14 14:11:32

标签: ruby-on-rails ruby git capistrano capistrano3

Capistrano configfile有配置

set:scm,:git和:repo_url和:branch

我可以在没有scm的情况下使用capistrano进行部署吗?

set :scm, :none            
set :repository,  "."       

Capistrano部署中scm config的好处是什么?

4 个答案:

答案 0 :(得分:4)

使用Capistrano 2你可以做到这一点。有了Capistrano 3,你就可以了。

您可以做的一件事是在托管应用程序的同一台服务器上托管一个Git存储库,因为要托管'存储库仅指having the repo files in a directory somewhere。您可以通过SSH从本地计算机推送更新,而对于Capistrano,repo URL将只是服务器上repo的路径。

您不需要第三方服务来托管回购,您也不需要任何特殊的服务器软件。

关于在源代码管理下使用代码的好处 - 有太多,这就是为什么每个人都在使用它,这就是为什么Capistrano开发人员甚至不愿意支持非SCM部署。

答案 1 :(得分:3)

你可以使用CapistranoRailsArtifact gem来做到这一点。

这个宝石允许

  

您将Rails应用程序打包成.tar.gz并轻松部署。这是通过为Capistrano 3创建一种新类型的“scm”来实现的。

答案 2 :(得分:0)

首先,否

Capistrano必须与scm合作。

使用github或bitbucket创建一个帐户并加载您的代码。这对你来说更重要。然后设置capistrano以从该repo加载代码。

答案 3 :(得分:0)

这可能是有用的,例如对于像jekyll / middleman / nanoc等创建的静态站点。这些工具通常会生成要在某种“构建”目录中上载的代码,该目录不包含在存储库中,只包含源文件。所以在这种情况下你可以使用Capistrano和scm = none以及repository =“./ build”。