7

Capistranoは知っていますが、私には少し重すぎます。個人的に、私は 2 つのMercurialリポジトリをセットアップしました。1つはプロダクション サーバー上に、もう 1 つはローカルの開発マシン上にありました。定期的に、新機能の準備が整うと、変更をローカル マシンのリポジトリからサーバーのリポジトリにプッシュしてから、サーバーで更新します。これは、複数のコンピューターでファイルの同期を維持するための非常に簡単で迅速な方法ですが、データベースの更新には役立ちません。

問題の解決策は何ですか?

4

5 に答える 5

1

カピストラーノのヘビー級とは?ファイルを同期したい場合は、rsync が優れていることを確認してください。しかし、その後データベースの更新を行う必要がある場合は、キャップはそれほど悪くないのでしょうか?

于 2008-11-29T08:16:28.087 に答える
1

または、Python を好む場合はFabric 。

于 2008-10-08T18:47:33.230 に答える
1

以前は git push を使用して Web サーバーに公開していましたが、最近は rsync を使用しています。私は自分のサイトを可能な限りどこで実行されているか (相対パスなどを使用) にとらわれないようにしようとしていますが、これまでのところうまく機能しています。唯一の課題は、データベースの同期を維持することです。そのために、私は通常、運用データベースをマスターとして使用し、定期的なバックアップを作成して、テスト データベースにインポートします。

于 2008-09-01T13:04:34.740 に答える
0

Ruby on Rails について話していると思います。

ハウツーウィキをチェックしてください:

http://wiki.rubyonrails.com/rails/pages/Howtos#deployment

于 2008-10-03T19:29:38.280 に答える
0

@アンドリュー

git push を使用してサイトをデプロイするには、最初にプッシュ先の .git/config ファイルにリモート サーバーを設定する必要があります。次に、リポジトリにコピーしたばかりのコードを作業ディレクトリにコピーするために、基本的に git reset --hard を実行するフックを構成する必要があります。

これが少し曖昧であることはわかっていますが、rsync に切り替えたときにサーバー側の .git フォルダーを実際に削除したため、魔法を実現するために使用した正確なスクリプトはありません。ただし、それは完全な質問の良い候補になる可能性があるため、より多くの回答が得られる可能性があります。

編集:しばらく経っていることは知っていますが、最終的に再び使用していたものを見つけました:

Git プッシュを使用してプロジェクトをデプロイする

于 2008-09-01T15:43:15.483 に答える