一、go找包逻辑
go buildgo run
vendorsrcvendorGOROOTGOPATH
二、vendor使用建议
mainpackagevendormainpackagevendor
三、govendor 简介
govendor 是一个基于 vendor 目录机制的包管理工具。
$GOPATHvendorvendor/vendor.jsonComposergovendor add/update$GOPATHvendor/*/govendor syncgovendor fetchgovendor migratevendorgovendorLinuxmacOSWindowsGitHgSVNBZR
goGoPATHsrcGoPATHGoPATHGoPATHgovendor
go get -u github.com/kardianos/govendor
govendor init # 创建vendor目录,创建vendor.json文件
govendor add +external #生成依赖包(添加外部包,不包含项目代码)
govendor update +vendor # 更新vendor的包命令
命令解析:
+local+external+vendor+std+unused+missing+program+outside+all
initlistaddadd PKG_PATHupdateremovestatusfetchsyncget
命令举例:
govendor add +local #会将本地的项目包(代码)也添加到vendor目录下
# 拉取最新包(指定版本,按版本拉,不指定按最新拉)
govendor fetch github.com/astaxie/beego@=v1.10.0
# 同步依赖包(如果某个包误删,verdor.json存在即可依其进行拉取)
govendor sync