質問

私はすでに展開されているギャラリースタイルのアプリを持っています。私の地元のバージョンは、私は地元のテストのためにのみ使用する多くの写真を持っている、と私は絶対に彼らがオンラインである私の本当の写真を上書きしたくない。

私はまた、唯一の私のコードを追跡し、写真を無視するgitリポジトリを持っています。

私はキャップのデプロイを入力すると、

:移行はそれは私のgitリポジトリを使用するか、しないのですか?すなわちカピストラーノはローカルなもので私のオンライン写真を上書きする場合、またはGitはそれらを無視するので、それは彼らを無視する?

役に立ちましたか?

解決

単にカピストラーノの共有フォルダにあなたの写真を入れて、それをシンボリックリンク。それを自動化するには、のようなカピストラーノレシピを記述します:

namespace :deploy do

  after "deploy:setup", "deploy:pictures:setup"
  after "deploy:symlink", "deploy:pictures:symlink"

  namespace :pictures do
    desc "Create the pictures dir in shared path."
    task :setup do
      run "cd #{shared_path}; mkdir pictures"
    end

    desc "Link pictures from shared to common."
    task :symlink do
      run "cd #{current_path}/public; rm -rf pictures; ln -s #{shared_path}/pictures ."
    end

  end
end
「キャップ展開:セットアップ」

このレシピは上のフォルダを共有capistranos内の画像フォルダを作成し、各「キャップ展開」でそれをシンボリックリンク。

あなたはすでにサーバー上の画像フォルダを作成し、いくつかの写真を追加した場合、このコマンドを実行する前にそれを移動することができるのでます:

cd yourapp
mv current/public/pictures shared
ln -s shared/pictures current/public/pictures

私はあなたが GitHubの

他のヒント

展開すると

、カピストラーノは選択のあなたのバージョン管理システムからの新鮮なコピーをチェックアウトします。それはあなたのローカルファイルを気にしません。

scroll top