更新:最近、 Bower、Component、Browserifyがあり、これらすべてを自動的に処理してくれます。
私がしていることを誰もカバーしていないことに驚いています。スクリプトとリソースを管理する方法は次のとおりです。
セットアップに取り組んでいる各プロジェクトがありますSVN
。私が含めるほとんどすべてのスクリプトにはSVNミラーがあります(最近はgithubにsvnがあります)。これは、SVN外部を使用して、そのプロジェクトのブランチやバージョン、または必要なものをプロジェクトscripts
フォルダーに直接フェッチできることを意味します。SVNを使用しているため、これらのスクリプトの追跡、管理、更新は簡単です。
プロジェクトがSVNにない場合は、作成した共通のSVNプロジェクトに追加するだけです。たとえば、プロジェクトAとプロジェクトBはどちらもを使用するため、共通のプロジェクトのSVNリポジトリにjquery-project-not-in-svn
固執してから、SVN外部を使用します。jquery-project-not-in-svn
前に説明したように、プロジェクトAとBはそれを参照します。
これで、管理、フェッチ、および更新について説明します。
スクリプトのインクルードとリクエストについて説明します。
各プロジェクトには、必要なすべてのスクリプト(SVN外部によって管理される)を含む独自のスクリプトディレクトリがあるため、サーバーの負荷を軽減するためにそれらを縮小することを心配する必要があります。各プロジェクトMakefile
のルートには、コマンドを含むが含まれていますupdate
。このコマンドは以下を実行します:
- SVN更新を実行します(これにより、すべてのSVN外部が適切に更新されます)
- それが完了すると、すべてのjsファイルをパックして縮小し
scripts/all.js
ますscripts/all.min.js
正確なMakefile
ものを共有することはできませんが、CSSとJavascriptのパッキング/マージとミニファイを処理する公開されているものを共有することはできます。リンクは次のとおりです:http:
//github.com/balupton/jquery-sparkle/blob/9921fcbf1cbeab7a4f2f875a91cb8548f3f65721/Makefile
これらのことを行うことにより、私たちは次のことを達成しました。
- 複数のプロジェクトにわたる外部スクリプトリソースの管理
- 適切なスクリプトリソースの自動更新
- プロジェクトで使用されているすべてのスクリプトリソースを1つのファイルにパックする
- 1つのJSリクエストと1つのCSSリクエストのみが実行されるように、そのファイルを縮小します。
幸運なことに、詳細を知りたい場合は、コメントを投稿してください。