4

好的,在你投反对票之前,听我说完......有很多在线演练通过 Capistrano 部署 cakePHP/Wordpress/Drupal/Symfony,项目自己的文档非常好,但对 Capistrano 实际所做的事情并没有太多的报道默认。具体来说,执行 git checkout 到文件夹/timestamp/most-recent-timestamp/current,webroot 之前已符号链接到/current.

我问这个问题是因为我们有一个非标准的、被黑的 capistrano 部署过程,出于一些遗留原因,我想让我们与默认行为保持一致。为了做到这一点,我想知道 capistrano 的默认行为实际上什么的背景。

cp -Ra /home/username/deploy/shared/./ /home/username/deploy/releases/20121026170156/:这个命令需要很长时间才能完成,我没有看到任何/shared这样使用的文档:扮演的典型角色是/shared什么?

4

1 回答 1

2

虽然可能只是答案的开始,但了解任何 FOSS 项目的最佳方法之一是通过源代码

来自 PHP 世界的您可能对 Ruby Gem 的组成方式并不熟悉。/bin通过gem 目录中 文件的存在,系统路径 [作为可执行文件] 可以使用 Gem 。Capistrano's 在这里- 从这里你可以看到调用过程从哪里开始cap production deploy

require 'capistrano/cli'
Capistrano::CLI.execute

在这种情况下,它会加载 CLI 库,然后在其中调用命令。从那里开始追踪你需要的东西。

于 2012-10-28T01:14:19.210 回答