govendor は goパッケージをバージョン管理できるツール
プロジェクトのvendor以下をローカルパッケージとして管理できるgoの機能を拡張することで機能する。
govendor fetch <package name>
とすると、vendor/vendor.json
の下に管理用のjsonファイルが作成される。
heroku
もこのツールを対応している。
注意点としては、goのパッケージロードで、vendorディレクトリにパッケージがなければ、$GOPATH
以下を読みに行くので、ローカルではvendorディレクトリにパッケージがなく、$GOPATH
にはあってビルドが通るけど、heroku
上ではどちらにもなくてビルドがこける。ということがあるので、ちゃんと必要なパッケージはvendor.jsonに記述しておく必要がある。