Glide管理Golangプロジェクト
1056 ワード
Glideを使用していない場合に発生する問題
もしあなたのプロジェクトAが複数のプロジェクトB 1,B 2,B 3に依存し、B 1,B 2,B 3が他のプロジェクトC 1,C 2....1つのプロジェクトはこの複数のプロジェクトに依存しており、プロジェクトC 1がバグバージョンを修正すると、Aが古いバージョンを使用している場合、未知の問題が発生します.
Glideを使うメリット
glideを使用する利点は、各プロジェクトがそれぞれ独立したパッケージを採用し、パッケージのバージョンをよく制御できることです.
プロジェクトupdateをロードするたびにglideはglideに従います.yamlに記録されたパケット名をダウンロードするインストールおよび使用
使用前にダウンロードする必要があります:
Glideコマンド
--all-dependenciesは、関連するすべての依存パッケージをダウンロードします.
-sすべてのバージョン管理を削除します.git
-vネストされたvendorを削除
-$GOPATH/src/myProject (Your project)
もしあなたのプロジェクトAが複数のプロジェクトB 1,B 2,B 3に依存し、B 1,B 2,B 3が他のプロジェクトC 1,C 2....1つのプロジェクトはこの複数のプロジェクトに依存しており、プロジェクトC 1がバグバージョンを修正すると、Aが古いバージョンを使用している場合、未知の問題が発生します.
Glideを使うメリット
glideを使用する利点は、各プロジェクトがそれぞれ独立したパッケージを採用し、パッケージのバージョンをよく制御できることです.
プロジェクトupdateをロードするたびにglideはglideに従います.yamlに記録されたパケット名をダウンロードするインストールおよび使用
使用前にダウンロードする必要があります:
go get github.com/Masterminds/glide
. Glideコマンド
glide create|init
プロジェクトを初期化しglideを作成する.yamlファイル(パッケージ管理のプロファイル). glide get
単一パケットを取得する.--all-dependenciesは、関連するすべての依存パッケージをダウンロードします.
-sすべてのバージョン管理を削除します.git
-vネストされたvendorを削除
glide install
取付パッケージglide update|up
アップデートパッケージディレクトリ構造-$GOPATH/src/myProject (Your project)
|
|-- glide.yaml
|
|-- main.go (Your main go code can live here)
|
|-- mySubpackage (You can create your own subpackages, too)
| |
| |-- foo.go
|
|-- vendor
|-- github.com
|
|-- Masterminds
|
|-- ... etc.