「sails-mongo」というモジュールがあり、次のコマンドを使用して最新バージョンに更新します。
npm update sails-mongo --save
また、アンインストールしてから再度インストールしてみました。私は試した sails-mongo@latest
およびsails-mongo@beta
。
問題:GitHub上の現在のバージョン(master)package.json ( https://github.com/balderdashy/sails-mongo/blob/master/package.json )ファイルの内容:
"dependencies": {
"async": "~0.2.9",
"lodash": "~2.4.1",
"mongodb": "1.4.2",
"waterline-errors": "~0.10.0"
},
そして、更新されているもので
"dependencies": {
"async": "0.2.10",
"underscore": "1.5.2",
"underscore.string": "2.3.3",
"mongodb": "~1.3.23"
},
マスターブランチを取得する唯一の方法は、コマンドnpm install git+https://github.com/balderdashy/sails-mongo
なぜsails-mongo@latest
masterブランチをインストールしますか?
デフォルトでは、NPMの依存関係はNPMリポジトリから取得されます。作成者は、ソフトウェアの新しいバージョンをNPMリポジトリに手動でアップロードする必要があるため、NPMでホストされるコードの「_@latest
_」バージョンは、どこかに存在する最新バージョンのコード(GitHubなど)とは異なります。
NPMリポジトリの Sailsの情報ページ によると、NPMがホストする最新バージョンは_0.9.16
_であり、 現在のGitHubバージョン は_0.10.0-rc3
_です。
プロジェクトを(NPMリポジトリでホストされているバージョンではなく)特定のGitリポジトリの特定のブランチまたはコミットに依存させる場合、NPM開発者はこれを許可する明示的なメカニズムを含めています。 依存関係としてのGit URL " _package.json
_ docs :
依存関係としてURLをGit
GitのURLの形式は次のとおりです。
_git://github.com/user/project.git#commit-ish git+ssh://user@hostname:project.git#commit-ish git+ssh://user@hostname/project.git#commit-ish git+http://user@hostname/project/blah.git#commit-ish git+https://user@hostname/project/blah.git#commit-ish
__
commit-ish
_は、_git checkout
_への引数として提供できる任意のタグ、sha、またはブランチにすることができます。デフォルトはmaster
です。
実際、依存関係として Github.comリポジトリを使用 する方が簡単です:
バージョン1.1.65では、GitHubのURLを_
"foo": "user/foo-project"
_として参照できます。例えば:_{ "name": "foo", "version": "0.0.0", "dependencies": { "express": "visionmedia/express" } }
_
そのため、Sails GitHubリポジトリを使用するには、単に以下を使用します。
_"dependencies": {
"sails": "balderdashy/sails-mongo",
...
}
_
また、2014年4月28日の時点でGitHubに存在するSailsの正確な状態を使用するには、次を使用します。
_"dependencies": {
"sails": "git://github.com/balderdashy/sails-mongo#b9cdce9a48",
...
}
_
同様の問題がありました。 NPMレジストリを介して、GitHubで見たプロジェクトの最新情報を次のように取得しようとしました。
//package.json
"devDependencies": {
"foo-package": "^3.3.0",
}
しかし、私はnpm install
(node_modules/
folder)は、GitHubリポジトリのmasterブランチで見たものではありませんでした。私は混乱していた; 2つが一致しなかったため。
最終的に見つけたのは https://docs.npmjs.com/cli/view で、特定のリポジトリについてNPMレジストリが認識している情報(バージョンと日付)を明らかにします。
// Console example
npm view foo-package
GitHubリポジトリのmasterブランチに必要なものがNPMレジストリにないことを確認した後、@ apsillersが答えるように、最終的にアプローチを変更しました Git URLs as Dependencies 。