2011-07-04 3 views
5

私はcouchdbコードでもっと貢献したいと思っていますが、どのように正しい方法で行われているのかわかりません。ソースに変更をテストするたびにcouchdbを再作成して再インストールする必要がありますか?

私はその後、私は couch_httpd_show.erl

と呼ばれるソースからのファイルを変更したいApacheのgitリポジトリからソースをクローン化し、

./configure 
make && sudo make install 

でそれを構築してい

私はすべての変更のために再びmake && sudo make installを実行する必要がありますか私はソースコードを作成し、それがどのように動作するかを見たいと思っていますか?

このアプローチはちょっと時間と忍耐を消費する権利なので、もっと実際的な方法があると確信しています。 :)

すべてのヘルプは本当にあなたがその1つのファイルを再構築し、場所と再起動に出力ビームをドロップすることができ

おかげ

+0

Hehe manojlds、私はチャンスを得る前に20秒のようにgitタグを削除しました:) – ralphtheninja

答えて

5

はい、ショートカットがあります。

./configure 
make dev 
./utils/run 

これは、カレントディレクトリ内に完全にCouchDBを構築して実行します。バックグラウンドデーモンとして実行する代わりに、CouchDBはフォアグラウンドで実行され、ログメッセージを端末に出力します。ログの場合は./tmp/log、データベースの場合は./tmp/lib、設定が正しい場合はのローカルディレクトリを使用します。

あなたの代わりにこれを実行する場合:

./utils/run -i 

、あなたはまた、デバッグを支援するために使用できるインタラクティブなErlangのプロンプトを、持っています。

私はCouchDBの上で作業するとき、私はシェルでこれを実行します。

make dev && ./utils/run -i 

私はいくつかのコードを変更した後、私は返す、上向きの矢印、^Cを押してください。

私はCouchioに参加したとき、私はCouchDBのプロダクションを担当しました。私はクリスアンダーソンに何かアドバイスを依頼した。彼は「すみません、1月に私はutils/runを何年も使用していますか」と尋ねました。

+0

これは本当に便利です@jhs、これは本当に助けてくれます。それはあなたがそれをインストールする必要はありません素晴らしいです。乾杯 – zanona

2

をいただければ幸いです。

+0

ダスティンに感謝します。どうすればいいですか?私は知識が不足して申し訳ありません。もう一度ありがとう:) – zanona

+0

私は本質的にその技術を使用して生産のcouchdbをアップグレードすることを聞いたことがあります。 – JasonSmith

0
erlc <file.erl> 

& .beamファイルをコピーします。 couchdbを再起動するには、init:restart()を使用します。 erlangシェルで、POST/_restartからCouchDBに移動します。

javascriptテストスイートのコマンドラインerlang &を使用して、何も破壊しないようにすることもできます。

関連する問題