いくつかのプライベート node_modules と共に node.js エクスプレス アプリを開発しています。
git タグを使用して、これらのモジュールのさまざまなバージョンをユーザーに公開したいと考えています。タグを自動検出し、これらの git タグ参照のそれぞれでモジュールを要求することによって、これを行う同様に賢明な方法はありますか?
おそらく、「git-helpers」のようなものが存在する可能性がありますか? (コードはコーヒースクリプトです)
git = require('git-helpers?').dir('./node_modules/module/')
tags = git.getGitTags()
modules = []
for tag in tags
git.requireAtGitTag tag, (err, res) ->
modules.push {version: tag, module: res}
モジュール変数は次のようになります
[
{ version: "0.8", module: required_module_here_at_tag},
{ version: "0.9", module: required_module_here_at_tag},
{ version: "1.0", module: required_module_here_at_tag}
]
編集
Giftという node.js git cli ラッパーを使用してアイデアを思いつきました。これは賢明な方法ですか?
gift = require("gift")
repo = gift("./node_modules/moduleA")
modules = []
repo.tags (err, tags) ->
for tag in tags
repo.checkout tag.name, (err, a) ->
modules.push
version: tag.name
module: require("./node_modules/moduleA")