如何确保go build使用供应商目录中的所有依赖项

时间:2017-03-21 07:27:13

标签: go dependencies vendor godeps

我使用了godep并在vendor /目录中销售了我的所有依赖项。 Go build也运行良好。但是,我怎么能确定我的所有依赖项都被出售?

有没有可以确定的命令?

2 个答案:

答案 0 :(得分:1)

我的CI服务(Travis是我使用的)让我知道。因为如果deps不可用,我的测试版本将失败。

无论如何,你应该使用CI服务,然后免费获得这项服务。

答案 1 :(得分:0)

我使用govendor来管理依赖项,它具有status选项。这是govendor的一些命令:

init     Create the "vendor" folder and the "vendor.json" file.
list     List and filter existing dependencies and packages.
add      Add packages from $GOPATH.
update   Update packages from $GOPATH.
remove   Remove packages from the vendor folder.
status   Lists any packages missing, out-of-date, or modified locally.
fetch    Add new or update vendor folder packages from remote repository.
sync     Pull packages into vendor folder from remote repository with revisions
             from vendor.json file.
migrate  Move packages from a legacy tool to the vendor folder with metadata.

具体来说,您需要govendor status检查是否缺少包裹。

如果你决定使用govendor,你可以开始做:

  • go get github.com/kardianos/govendor
  • govendor migrate(将从godeps迁移到govendor)

另外,您在评论中提到您部署到Heroky,这里有一些documentation from them on govendor