質問: drush makeでサイトを効果的に管理するにはどうすればよいですか? drush make を使用してサイトを管理する際に考慮すべき重要なことは何ですか?
回答: drushおよびdrupalコンテキストで「ファイルを作成する」では、サイトを構成する一連のモジュール、テーマ、およびライブラリを定義します。sites/ all/modulesディレクトリ全体をgitに貼り付けることもできます、メイクファイルはgitと開発者の両方で処理がはるかに高速です。以下は、私の実際のプロジェクトからのメイクファイルです。ファイル全体が数百行であるため、たくさん切り出しましたが、私が使用したすべての機能を表示するのに十分保持されています。; api api = 2 ; core core = 7.x projects[drupal][version] = 7.14 ; contrib modules projects[date][version] = 2.0-alpha4 projects[email][version] = 1.0 ; media and file_entity go hand in hand - please make sure they work together. projects[media][version] = 2.0-unstable5 projects[file_entity][version] = 2.0-unstable5 ; cron modules projects[ultimate_cron][version] = 1.6 projects[background_process][version] = 1.12 ; performance modules projects[expire][version] = 1.0-alpha2 projects[cache_actions][version] = 2.0-alpha3 ; unstable modules projects[menu_node_views][type] = module projects[menu_node_views][download][type] = git projects[menu_node_views][download][url] = http://git.drupal.org/project/menu_node_views.git projects[menu_node_views][download][revision] = f46dd41eb8c4e693a6642a6c461afa57d99a6f1b projects[filefield_sources_plupload][type] = module projects[filefield_sources_plupload][download][type] = git projects[filefield_sources_plupload][download][url] = http://git.drupal.org/project/filefield_sources_plupload.git projects[filefield_sources_plupload][download][revision] = da374770b80fcbc0dab17158d38c8436ef29caca projects[menu_token][type] = module projects[menu_token][download][type] = git projects[menu_token][download][url] = http://git.drupal.org/project/menu_token.git projects[menu_token][download][revision] = 8c18fbb ; libraries libraries[mediaelement][download][type] = "file" libraries[mediaelement][download][url] = "https://github.com/johndyer/mediaelement/zipball/2.7.0" ; patches ; #1491150: node_load in menu_node_menu_link_insert is not safe - http://drupal.org/node/1491150 projects[menu_node][patch][] = http://drupal.org/files/menu_node-node_load-in-menu_node_menu_link_insert-1491150-1.patch ; fix rendering of relation endpoints projects[relation][patch][] = http://drupal.org/files/relation_table_endpoints_break.patch projects[relation][patch][] = http://drupal.org/files/relation_bundle_permissions.patch libraries[jquery-json-min][download][type] = "file" libraries[jquery-json-min][download][url] = "http://jquery-json.googlecode.com/files/jquery.json-2.3.min.js" libraries[jquery-json-min][download][sha1] = "2a4615b93c65dd50f92117c570121035a0327fee" libraries[jquery-json-min][destination] = "libraries/jquery-json" api行は、ファイルの残りの部分で使用するdrush make apiを定義します。ファイルについて注意する重要なことの1つは、すべてのモジュールが特定のバージョンを持っているか、特定のgitコミットをポイントしていることです。私たちのneverには、ファイルに-devバージョンがありません。クライアントの会議に出席するとき、またはメイクファイルを jenkins サーバーに渡すとき、neverは驚き。ファイルに含まれている正確なバージョンをテストし、すべてのタイプのテストに合格する必要があります。これは、高品質のものを配信できるようにするために重要です。私の会社では、すべてのチームがリポジトリのルートに「ビルド」と呼ばれるシェルスクリプトを提供し、サイトの設定を担当することで、自動テストを同じクロスチームで実行できるようにするという一般的な合意があります。 ciセットアップ。モジュールの更新は、テスト用のサイトで直接直接行うことができますが、公式にはmakeファイルを更新し、サイトを再構築することで行えます。私のチームは現在、これを使用しています 一連のビルドスクリプト 。私は機能の大部分をプロビジョンを多用するdrush拡張機能に移行するように取り組んでいます。可能であれば、aegirのcliバージョン。