2017-10-22 6 views
0

VSTS pacakgeフィードで動作するように設定した.npmrcファイルを作成しましたが、私の公開依存関係はインストールされません、lodash ...)VSTSパッケージのフィード:vstsフィードを使用するようにクライアントを設定したあと、public npmパッケージをインストールできない

私のプライベートフィードを指すように.npmrcファイルを設定すると、すべてのパブリックパッケージにアクセスできなくなります。

npmとは異なり、複数のパッケージレジストリをサポートしていないので(現在はSA questionです)、現在はnpmのインストールを2回実行しています - パブリック依存関係を取得するために.npmrcファイルを使用せずに1回、 .npmrcファイルをプライベートにする。

VSTSミラーリング/プロキシの公開レジストリはありませんか?そうでない場合 - npmを2つの異なるバージョンの.npmrcファイルで2回インストールすることを期待していますか?

+0

上流のソースを有効にした後に問題を解決しますか? –

+0

@ starain-MSFT私のプライベートパッケージのスコープ(つまり、私のプライベートパッケージのパッケージ名は '@ scope/package'のようなものになります)を使って問題を回避したところ、.npmrcをvsts pacckageフィードのみを指すように設定しました私の '@スコープ'のために。パブリックパッケージはnpmhsに行き、私のパッケージは私のプライベートvstsフィードに行きます。 –

答えて

1

これを処理する簡単な方法は、フィードの上流ソースを有効にすることです。その後、パッケージがフィードに存在しない場合、パッケージフォームnpmjs.comが検索されます。

Use packages from npmjs.com

もう一つの方法は、あなたが、たとえば、コマンドでレジストリを指定することができるということである:npm install -g vsts-npm-auth --registry https://registry.npmjs.com --always-auth false

一方、ユーザーのフォルダー(c:\ Users [ユーザー名])ではな​​くプロジェクトの.npmrcファイルにフィードを追加するだけで、現在のコンテキストが別のパスにある場合はパブリックレジストリを使用します。

+0

上のソースは正しい方法です。最後の段落のポイントでは、npmはこの方法では動作しません。https://docs.npmjs.com/files/npmrcから "各[.npmrc]がロードされ、設定オプションが優先順位で解決されます。たとえば、userconfigファイルの設定は、globalconfigこれは、検出された複数のNuGet.configファイルを組み合わせたNuGetとは異なります。 –

+0

@Alex .npmrcファイルを持たない他のフォルダからnpmコマンドを実行すると、グローバル設定ファイルが使用されます。 –

関連する問題