0

RoR のプロジェクトで友人と協力しています。さまざまなマシンで実行するようにすべてをセットアップするために多くの作業を行った後、アプリを heroku と両方のローカル マシンにデプロイしました。これを今後管理するためのより簡単な方法はありますか?私たちはこれに何度も遭遇するように感じます。

私にはいくつかのアイデアがあります:

1.) アプリをプライベート サーバーにセットアップし、すべての開発をサーバー上で (ssh 経由で) 直接行います。これは一般的なアプローチですか?

2.) 完全に自己完結型になるようにアプリをセットアップします。つまり、Ruby、Rails、および必要なすべての gem を含むすべてを app フォルダーから直接実行します。必要なものがすべてプロジェクト ディレクトリにあれば、Ruby のバージョンや gem のバージョンがわずかに異なるために、あるマシンではアプリが動作するが他のマシンでは動作しないという問題を回避できるようです。

3.) 私のハード ドライブのクローンを作成し、友人に送信して、まったく同じセットアップから開始できるようにします。ディスク パーティション全体 (ubuntu を実行) の内容をコピーし、他の人のコンピューターにインストールして、ブートから OS を実行できるようにする方法はありますか? 私たちは両方ともubuntuを実行していますが、私のマシンで機能する多くのことが彼のマシンでは機能しないことがわかりました。非常に奇妙です。

4

1 に答える 1

1

https://github.com/capistrano/capistrano/は、SSH 経由で展開できる最も広く使用されている展開ツールです。

さらに、gem と依存関係を管理するための Bundler (http://gembundler.com/) を検討することをお勧めします。これにより、さまざまなマシンでの実行が容易になります。

RVM (https://rvm.io/) または rbenv (https://github.com/sstephenson/rbenv/) を使用して環境をさらに標準化し、特定の Ruby バージョンを含めることを検討する必要があります。

RVM を使用して "gemset" を作成することもできます。これは基本的に、gem のグループを特定のプロジェクトに分離するためのサンドボックスを作成します。

于 2012-08-15T21:06:23.037 に答える