Godep的基本使用
[http://studygolang.com/articles/4385]
关于Godep
发现好多golang项目都使用到godep作为包管理的工具,像比较大型的项目,比如kubernetes这种,都是使用的是godep来进行依赖管理操作的了,看了一下有点像maven的感觉,这里记录一下基本的操作。
首先是安装
由于网络的问题,goget的时候有一个包会找不到,网上有好多替代的解决方案,比如说这个
基本的使用
go save
比如说建立了一个基本的项目,就拿beego的示例项目来说。这里又一点要注意,没有使用版本控制的时候,go save是不成功的,会报类似如下的错误:
godep: error while inspecting "/Users/Hessen/goworkspace/src/testBee/bapi": directory "/Users/Hessen/goworkspace/src" is not using a known version control system
具体的原因这个文章讲解的比较详细。总是先要使用版本控制工具将整个项目初始化一下。之后 godev save 就可以看到在当前的目录下生成了Godeps的文件夹,里面有_workspace文件夹,存储着依赖包的源码,还有Godeps.json文件,具体描述了依赖关系。这里比较好的地方就是不用像maven那样自己去编辑对应的依赖包的描述文件,完全是根据版本控制工具自动生成的。
go restore
restore 的操作和go save的操作是相反进行的,比如git 上一个使用godep的项目,pull下来之后,使用godep restore就可以把Godeps/Godeps.json中列出的依赖拷贝到本地的GOPATH下面。有一个问题要注意,如果之间已经有安装过相关的包,并且进行了一些修改,进行过一些pull,request的操作,可能会有一些git的相关错误。
Godep的基本使用的更多相关文章
- godep 包管理工具
godep是解决包依赖的管理工具 安装 go get github.com/tools/godep 成功安装后,在GOPATH的bin目录下会有一个godep可执行的二进制文件,后面执行的命令都是用这 ...
- 【GoLang】golang 报管理工具 Godep 介绍
使用方法: 提交:cd ${GOPATH}/src/github.com/junneyang/xcloudgodep save -v ./...rm -rf vendor/git checkout - ...
- Go 命令之 godep
本文参考:http://www.cnblogs.com/me115/p/5528463.html#h20 http://studygolang.com/articles/4385 关于Godep 发现 ...
- go语言 godep save 报错 is not using a known version control system
使用 godep save 后提示需要包 如果使用 gopm 下载需要的包,就会没有版本控制文件夹,再次使用godep save后会报错 https://github.com/gpmgo/gopm/i ...
- go语言学习--go中godep的使用小结
go中的godep 本文参考:http://www.cnblogs.com/me115/p/5528463.html#h20 http://studygolang.com/articles/4385 ...
- godep 包管理
go get -u -v github.com/tools/godep godep save
- godep使用
安装: 1.mac:brew Install godep,全局可用 2.go get -u -v github.com/tools/godep 参数-u表示更新,-v可以看到进度信息.成功安装后,在 ...
- godep的save和update
godep save ./... 把依赖的包从GOPATH里找到,然后固化到当前目录Godeps目录里. 但是它不分版本:如果GOPATH里某个包升级了,godep save不会把它更新到Godeps ...
- Golang Gin 项目包依赖管理 godep 使用
Golang Gin 项目包依赖管理 godep 使用 标签(空格分隔): Go 在按照github.com/tools/godep文档go get完包以后,调整项目结构为$GOPATH/src/$P ...
随机推荐
- base64是啥原理
Base64是一种基于64个可打印字符来表示二进制数据的表示方法.由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符.三个字节有24个比特,对应于4个Base64单元,即3个字节可表 ...
- Node.js框架 —— Express
一.安装express 1.需先安装express-generator npm install -g express-generator 2.安装express npm install -g expr ...
- WinSCP怎么导入filezilla中的站点?
WinSCP是一款优秀的图形界面,远程文件管理工具,其出色的图形化界面与windows完美集成,是运用在windows上与远程服务器安全传输文件的软件之一 工具/原料 winscp 方法/步骤 下载. ...
- android 基础04-BroadCastReceiver
Android 系统中的广播(BroadCast) 是组件与组件进行的一种可跨线程的通信方式.类似于 广播者-订阅者(publish-subscribe) 的实现,当系统或者某个应用的状态发生改变时, ...
- Core Graphics框架是Quartz的核心,也是内容描画的基本接口。
Core Graphics框架是Quartz的核心,也是内容描画的基本接口.
- sqlite3使用事务处理[zz]
<!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-al ...
- 【开发技术】Get请求和Post请求区别
a.Get请求是通过URL请求来提交表单数据的:Post是通过HTTP中的POST机制将表单中的数据提交到Action所定制的程序,如果有附件需要用Post方式. b.Get适用于传输数据量小于1K数 ...
- angular4 中自定义pagination组件
你用Angular 吗? 一.介绍 一个基于angular4 开发的可以分页的组件.组件的好处就是可以复用,复用.....作为一个前端码农,开始的分页功能实现是我用jquery写的,其他同事用的时候都 ...
- linux_磁盘分区
分区并没有数据内容只是改变分区表,保存在0磁头,0磁道1扇区除MBR引导后64bytes中,只能有4个组分区,4个以上要一个扩展分区 引导MBR,保存在446字节中 磁盘想要存放数据,首先要分区,可以 ...
- ELK入门级介绍--打造实时日志查询系统
这几天一直在研究ElasticSearch,在网上看到一篇好的文章和大家分享. ELK平台介绍 在搜索ELK资料的时候,发现这篇文章比较好,于是摘抄一小段: 以下内容来自:http://baidu.b ...