Capistranoはsvn等のscmからチェックアウトしてdeployするようになってます。 なので、Subversionにdatabase.ymlを含めてなかったりignoreしてると、deployするときに困ります。 こういう場合はどうするかというと、後からセットするようなタスクを書けばいいわけですが、例えばcap deploy:updateしてdatabase.ymlを後からコピーなりシンボリックリンクを貼るという事をする為に、deploy:update相当をまるっと定義し直すというのは無駄ですよね。 で、そこらへんはやっぱり考慮してあって、beforeとafterというフックが用意されています。 では、どのタスクにフックをかけるかですが、deploy時に使うタスクを確認すると、symlinkというcurrentにシンボリックリンクを貼るタスクが大体中で呼ばれています。 なので、私