ゴ ヴァンギ

2017.08.29

Glideを使って、 Goプロジェクトのパッケージバージョンを管理しよう!

Glideを使って、 Goプロジェクトのパッケージバージョンを管理しよう!

こんにちは!エンジニアのギです。
今回はGoプロジェクトのパッケージバージョンの管理に関して、Glideというツールをご紹介いたします。

Goのデフォルトパッケージ管理を使うときの問題

Go言語には標準で go get という依存関係を解消する便利なコマンドが含まれていて、このコマンドを使うことでリポジトリから1コマンドで簡単にすべての依存パッケージをダウンロードし導入できるようになっています。しかし、このコマンドを使うと、固定なバージョンを設定できないし、依存パッケージの最新バージョンしか導入できないという悩ましい問題があります。

パッケージのバージョン固定のいくつかツールまとめ

パッケージのバージョン固定の管理ツールはいろんなものがありますが、GitHubのStar数が高いやつをいくつかまとました。

URL Star数  参考
dep 4399 公式ツール。Alphaバージョンなう
manul 634
godep 4863
govendor 2350
gvt 678
govend 223
glide 5211 php composerのようなツール
gom 1276

私はPHPの開発に慣れているので、composerに似たglideというツールを使って開発するのが楽です。
ぎっとはぶでのGit Hub star数も多いので、glideに慣れている方もいると思います。

Glideを使ってみよう

Glideをインストールする方法

LINUXとかMACなどで以下のコマンドを実行すると、インストールできます。

Macでは、Homebrewでもインストールできます

パッケージ定義ファイルを作成する方法

Glideは、依存関係の定義ファイルをYAMLで記述します。プロジェクトのルートに以下コマンドを実行すると、定義ファイルが作成されます。

パッケージ定義の設定

上記のコマンドを実行すると、glide.yamlファイルが生成されます。このファイルに一覧パッケージを定義できます。バージョン固定もできます

パッケージの取得と更新

新しいパッケージの追加

最後に

以上です。Glideを軽く紹介いたしました。

Goプロジェクトのパッケージのバージョンを固定したい方は是非Glideを試してみてください!