現在、Capistrano と Git に苦労しています。最初に私のセットアップは次のとおりです。
- Windows Server 2003 の下の運用サーバー、msysgit がインストールされています。
- 開発用に Aptana を使用する Windows 7 の開発マシン
はい、Windows はどこにでもあります。しかし、私は今のところそれに対処しなければなりません。
したがって、私の問題は次のとおりです。カピストラーノのデプロイ試行中に、git clone
コマンドがスタックします。次のメッセージが表示されるだけで、次に何も起こりません。
Capistrano によって起動されるコマンドは次のとおりです。
git clone ssh://user@www.server.fr/Git_Repositories/MyApp /u/apps/MyApp/releases/20110614124655
結果は次のとおりです。
** [www.myserver.fr :: out] /u/apps/MyApp/releases/20110614124655 へのクローン作成中...
Capistrano によって作成されたフォルダーを調べたところ/u/apps/MyApp/releases/20110614124655
、.git フォルダーしか見つかりませんでした。したがって、git clone
コマンドは空のリポジトリの初期化に成功したと思います。
そこで、問題がどこにあるかを見つけるためにいくつかのテストを実行しました。
git clone
リモート デスクトップ接続を使用してログインし、Git プロンプトでコマンドを実行すると、サーバーでコマンドを正常に実行できます。git clone
サーバーで ssh 経由でコマンドを実行できません。cap deploy
開発マシンから実行した場合とまったく同じ結果が得られます
つまり、Git と SSH の間に何らかの問題があると思います。
そして、これが私のdeploy.rb
ファイルです。おそらく役立つでしょう:
set :application, "ADM"
set :repository, "ssh://user@www.server.fr/Git_Repositories/MyApp"
set :scm, :git
default_run_options[:pty] = true
ssh_options[:forward_agent] = true
set :scm_username, "git_user"
set :user, "user"
set :branch, "master"
set :scm_verbose, true
role :web, "www.server.fr"
role :app, "www.server.fr"
role :db, "www.server.fr", :primary => true
ありがとう!