标签:代码管理 项目 tps src 影响 pac too pre 指定
1、mac:brew Install godep,全局可用
2、go get -u -v github.com/tools/godep
参数-u表示更新,-v可以看到进度信息。成功安装后,在$GOPATH的bin目录
下会有一个godep可执行的二进制文件,后面执行的命令都是用这个,建议这个目录加入到全局环境变量中
Godeps.json文件描述了工程依赖项。Godeps.json文件位于工程目录的子目录Godeps下
工程目录应当是$GOPATH的子目录。以下命令都是在工程的根目录运行
godep restore
如果下载的项目中只有Godeps.json文件,而没有包含第三库则可以使用godep restore这个命令将所有的依赖库下载到$GOPATH\src
中用于开发,godep restore执行时,godep会按照Godeps/Godeps.json
内列表,依次执行go get -d -v
来下载对应依赖包到GOPATH路径下;
godep restore将Godeps/Godeps.json文件中指定的包安装到$GOPATH目录。
自动扫描当前目录所属包中import的所有外部依赖库(非系统库)
将所有的依赖库下载下来到当前工程中,产生文件 Godeps\Godeps.json
在没有 Godeps\
文件的情况下,生成依赖目录vendor\
文件夹
godep save会将工程依赖项复制到工程目录的vendor/子目录下。在这个过程中,以下文件不会复制
项目用godep管理后,要编译和运行项目的时候再用go run和go build显然就不行
因为go命令是直接到GOPATH目录下去找第三方库,且在1.6以后支持
vendor
方式编译,而使用godep下载的依赖库放到Godeps/workspace目录下的,但是不影响继续使用依赖GOPATH目录,所以与三方工具本身不冲突
故使用
godep go build XXX
godep中的go命令,就是将原先的go命令加了一层壳,执行godep go的时候,会将当前项目的workspace目录加入GOPATH变量中
godep save时godep把所有依赖包代码从GOPATH路径拷贝到Godeps目录下,并去除代码管理目录。这个用处主要是为了支撑godep go tool的一系列操作,尤其是git clone了代码库下来后,通常直接用godep go install xxx即可完成编译,一定程度上能够缓解golang比较严格的代码路径和包管理带来的烦恼。
而在使用IDE时
,可以通过把vendor
添加到GOPATH实现代码跳转和编译等功能,比较方便
标签:代码管理 项目 tps src 影响 pac too pre 指定
原文地址:https://www.cnblogs.com/shengulong/p/10230882.html