2

私は自分のプラクティスを更新することを考えており、少しの助けとアドバイスを探しています!

私は joomla、oscommerce、drupal などを実行するサイトで多くの作業を行っているため、多くのカスタム コンポーネント/プラグインやハックなどを作成しました。現在、各サイトには xampp セットアップに独自のフォルダーがあります。私がやりたいのは、(たとえば) Joomla セットアップのデフォルト設定があり、変更を更新するときに、自動更新のように、joomla を含む他のすべてのフォルダーを更新する何かを行うことができますか?

また、Aptana IDE の使用とunfuddleなどの SVN サービスを使用して自分の作業を他のユーザーと共有することも検討していますが、以前に SVN を使用したことがなく、SVN を使用して上記を実行できるかどうかわかりません。

メイン/コア アイテムで作業し、更新をローカル更新と実際のサーバーの両方に送信できれば、多くの異なる個別のサイトを維持する必要はありません。

提案?

4

4 に答える 4

3

はい、SVN はこの目的に最適なツールです。コード (例: カスタム Joomla コンポーネント) をソース管理に保存します。そのコンポーネントを使用する場所はどこでも、その特定のフォルダーのcheckoutまたはをライブ サイトに実行するだけです。exportリポジトリを構成する方法の 1 つを次に示します。

unfuddle.com/myRepo/trunk/com_myComponent
unfuddle.com/myRepo/trunk/com_anotherComponent

SSH 経由でライブ サーバーにログインし、次のコマンドを実行します。

> cd パス/to/joomla/components
> svn co http://unfuddle.com/myRepo/trunk/com_myComponent

コードを変更するときはいつでも、変更をコミットしてから、サーバーに再度ログインして実行します。

> cd パス/to/joomla/components
> svn up com_myComponent

これの本当の利点は、更新を行って何かが壊れた場合、いつでも最新の既知の「正常な」バージョンにロールバックできることです。

このプロセスの自動化に関しては、別のサーバーにあるとうまくいかない可能性があります. 同じサーバーに複数の展開を行う場合、サイト/コンポーネントごとに上記のコマンドを実行するシェル スクリプトを簡単に作成できます。これを完全に自動化する必要がある場合は、このスクリプトを毎日午前 2 時か何かに実行するように cron ジョブを設定することもできます。

SVN リポジトリをローカルで使用する場合は、 TortoiseSVNを参照することをお勧めします (Windows を使用している場合)。これは、SVN を使用する最も簡単で簡単な方法です。

于 2008-11-03T00:06:16.093 に答える
2

物事を自動化するために、これにSVNフックを使用できます。コミット後のフックがあるため、コミットを行うたびに、フック スクリプトが他のマシンに SVN 更新を実行して最新のコードを取得するように指示できます。

詳細については、Subversion を使用したバージョン管理 - リポジトリ フックの実装 を参照してください。

于 2008-11-21T18:43:46.917 に答える
0

Capistranoを調べます。数回使用しましたが、慣れればかなり美品です。Rails を対象としていますが、リポジトリからコードを取得して別のサーバーにデプロイする必要があるあらゆる場所で機能するはずです。

于 2008-11-03T05:03:07.397 に答える
0

あなたの状況に対する良い答えはありませんが、Subversion 自体が答えだとは思いません。

この質問は、「プロジェクト」間で共有するための Subversion のメカニズムに関するいくつかの懸念に対処しています。

Subversion は、このパズルのソース コード管理部分を確実に処理できます。自動配布は、別のツールを使用します。

于 2008-11-03T00:08:45.073 に答える