Go 1.6 でベンダーを理解する
Go 1.6 では、ベンダーは核となるワークフロー。外部依存関係を使用するプロジェクトをビルド、実行、またはインストールする場合、Go は ./vendor ディレクトリにあるパッケージを優先します。パッケージがそこで見つからない場合は、標準の $GOPATH/src ディレクトリに戻ります。
ベンダーの使用
ベンダーを使用するには、必要な外部パッケージをコピーするだけです。 $GOPATH/src ディレクトリからプロジェクトのルート フォルダー内の ./vendor ディレクトリに移動します。例:
mkdir -p $GOPATH/src/ou/vendor/github.com/zenazn/goji cp -r $GOPATH/src/github.com/zenazn/goji/ $GOPATH/src/ou/vendor/github.com/zenazn/goji
依存関係管理ツール
パッケージを ./vendor ディレクトリに手動でコピーすることも可能ですが、依存関係を使用する方が便利な場合があります。管理ツール。よく使われる 2 つのオプションは次のとおりです:
これらのツールは、システム内の外部パッケージの検索、コピー、管理のプロセスを自動化します。 ./vendor directory.
選択的ベンダー
完全な依存関係ロックにベンダーを使用することに加えて、問題を引き起こす可能性のある特定のパッケージのみを選択的にロックするために使用することもできます。アップデート付き。これにより、残りの依存関係が最新の更新を受信できるようにしながら、不正な動作をしているパッケージの特定のバージョンをロックダウンすることができます。
過剰使用が発生した場合
次の点に注意することが重要です。依存関係管理ツールに過度に依存すると、不必要なロックが発生する可能性があります。依存関係のロックは運用環境の安定性を確保するために不可欠ですが、ベンダーを選択的に使用し、消費者への影響を考慮することをお勧めします。
たとえば、 go get -u ./ を使用し続けながら、問題のあるパッケージのみを選択的にベンダー化します。 ...残りの依存関係については、問題を引き起こす可能性のある特定の依存関係を制御しながら、最新のバージョンとバグ修正を維持できます。
以上がGo 1.6 のベンダー メカニズムは外部依存関係をどのように管理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。