で
詳細情報は、あなたが最初のセットアップにオフラインパッケージレポを持っています。
レッツ・ホームフォルダ内の隠しディレクトリでセットアップが私たちのキャッシュ:あなたがyarn install
を実行するたびに、
今
yarn config set yarn-offline-mirror-pruning true
:
yarn config set yarn-offline-mirror ./.npm-offline
はまた、糸がdowloaded tarボールをきれいに持っている設定を設定しますいくつかのプロジェクトでは、モジュールはこのディレクトリにキャッシュされ、yarn --prefer-offline
を使ってフェッチすることができます。
キャッシュから新しいプロジェクトにインストールする場合は、latest
という概念を持たないため、必要なモジュールのバージョンを指定する必要があります。
yarn add moment
を私のマシンでは、この版画:@言及
yarn add [email protected]
糸のブログpost:私は、その後で、最新オフラインでインストールすることができます
error Couldn't find any versions for "moment" that matches "latest" in our cache.
Possible versions: "2.1.0, 2.13.0, 2.17.0, 2.17.1, 2.18.1, 2.19.1, 2.19.2, 2.19.3, 2.8.4"
// Note that above is not in semver order...
最も簡単には、単に追加しようとすることですadrianはどのようにプロジェクトごとのキャッシュを作成し、必要に応じてチームにコミットするかを詳しく説明します。私は、オフラインで新しいプロジェクトをブートストラップすることが理想的です。
この「--prefer-offline」コマンドは、「yarn add」プロセスにデフォルトの動作を適用する必要がありますか?私は "ng new myproject"を使用して、パッケージマネージャーとして糸を使った角度のあるプロジェクトを作成しようとしています。これは、キャッシュにダウンロード済みのパッケージで行う必要があります(セキュリティ上の理由から、これらのリソースをロックする必要があるため)。 angle-cliは糸に "--offline"フラグを使用するように指示しているようには見えないので、キャッシュファーストの要件は有効に見えません。 – eugene
糸がその設定で 'オフライン'または 'prefer-offline'を受け入れてオプションが出ているようには見えません。さらに、 'ng'は' ng set --global packageManager = * 'コマンドのように' npm'、 'yarn'または' cpnm'だけを受け入れます。だから私のアプローチは、1) 'cpnm'をインストールしておかないようにし、2)' --prefer-offline'フラグがセットされた糸を呼び出す 'cpnm'というパスにbashスクリプトを作ります。次に 'ng'のデフォルトパッケージマネージャとして' cpnm'を設定します。 – cyberwombat