当社の S/FTP デプロイメントでは、ファイルがリモート サーバーに自動的にコピーされますが、Beanstalk でホストされている git リポジトリへのリンクは保持されません。代わりに、Beanstalk リポジトリをリモート サーバーに複製することでデプロイできます。その後、デプロイするたびに、サーバー上のそのリポジトリ内から「git pull」を発行して、Beanstalk から変更を取得します。
Pagelime によって行われた変更を補正するには、プルの前後にいくつかの追加の手順が必要になります。
1) 次のコマンドを発行して、pagelime によって行われたすべての変更をコミットします。
git commit -am "commit pagelime changes"
2) 変更を Beanstalk からサーバーにプルする
git pull origin master
3) Pagelime の変更を Beanstalk にプッシュする
git push master
これは最も単純なワークフローであり、Pagelime の変更と、開発環境から Beanstalk に行ってコミットする変更との間で自動解決できない競合を考慮していません。
好みのスクリプト言語 (ruby、python、php) でこのワークフローを構成および/またはスクリプト化したら、S/FTP デプロイメントの代わりに Beanstalk の SSH デプロイメントの使用を開始できます。その後、デプロイを実行するたびに、Beanstalk はサーバーとスクリプトまたはコマンドに自動的にログインできます。