[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】 go get github.com/tools/godep
 

Godep的基本使用的更多相关文章

  1. godep 包管理工具

    godep是解决包依赖的管理工具 安装 go get github.com/tools/godep 成功安装后,在GOPATH的bin目录下会有一个godep可执行的二进制文件,后面执行的命令都是用这 ...

  2. 【GoLang】golang 报管理工具 Godep 介绍

    使用方法: 提交:cd ${GOPATH}/src/github.com/junneyang/xcloudgodep save -v ./...rm -rf vendor/git checkout - ...

  3. Go 命令之 godep

    本文参考:http://www.cnblogs.com/me115/p/5528463.html#h20 http://studygolang.com/articles/4385 关于Godep 发现 ...

  4. go语言 godep save 报错 is not using a known version control system

    使用 godep save 后提示需要包 如果使用 gopm 下载需要的包,就会没有版本控制文件夹,再次使用godep save后会报错 https://github.com/gpmgo/gopm/i ...

  5. go语言学习--go中godep的使用小结

    go中的godep 本文参考:http://www.cnblogs.com/me115/p/5528463.html#h20 http://studygolang.com/articles/4385 ...

  6. godep 包管理

    go get -u -v github.com/tools/godep  godep save

  7. godep使用

    安装: 1.mac:brew Install godep,全局可用 2.go get -u -v github.com/tools/godep  参数-u表示更新,-v可以看到进度信息.成功安装后,在 ...

  8. godep的save和update

    godep save ./... 把依赖的包从GOPATH里找到,然后固化到当前目录Godeps目录里. 但是它不分版本:如果GOPATH里某个包升级了,godep save不会把它更新到Godeps ...

  9. Golang Gin 项目包依赖管理 godep 使用

    Golang Gin 项目包依赖管理 godep 使用 标签(空格分隔): Go 在按照github.com/tools/godep文档go get完包以后,调整项目结构为$GOPATH/src/$P ...

随机推荐

  1. qq客服代码实现过程

    引入css,jsimages,将index.html中的qq聊天代码部分和返回顶部-部分放在head.html文件中, 将文中圈中部分删除,否则影响整个页面的样式:

  2. mysql批量数据脚本

    mysql批量数据脚本 1 建表 create table dept( id int unsigned primary key auto_increment, deptno mediumint uns ...

  3. 【编程技巧】JAVA读取url地址中的文本内容

    应用场景:最常见的是有自已的网站,在注册广告联盟的时候.都需要下载一个文本文件来验证网站的有效性.例如淘宝.京东等都有这一过程 实现代码://读url地址的内容        public void ...

  4. 如何使用mysql命令行

    现在向大家介绍mysql命令行下,从数据库的建立到表数据的删除全过程,希望对网友有所帮助 方法/步骤 1.登陆mysql 打cmd命令终端,如果已经添加了mysql的环境变量,可以直接使用命令 mys ...

  5. sersync+rsync同步

    (一)目标服务器(rsync):10.60.50.192 1.安装rsync yum -y install rsync 2.创建rsyncd.conf配置文件 vi /etc/rsyncd.conf ...

  6. Azure VM 防止被入侵

    伴随着开源Linux系统的逐渐盛行,在机器上线之前配置好安全策略至关重要,分享几点有关Azure Linux VM机器的安全建议如下: 1.禁止root账号登录虚拟机,并增加密码的复杂度(大小写字母, ...

  7. js随机生成验证码及其颜色

    今天迎来了2018年第一场雪,这个美好的日子,总的写点什么纪念一下,在这里写了一个在js中使用Math.random()函数,随机生成四位数的验证码及其验证码换颜色. js代码如下: var arra ...

  8. Certificate downloaded from cloudexpress:11443 is invalid

    问题描述: CertificateManagement : Server is not trusted.Received fatal alert: handshake_failure. Now ins ...

  9. Servlet--继承HttpServlet写自己的Servlet

    前面2篇关注的都是Servlet接口,在实际编码中一般不直接实现这个接口,而是继承HttpServlet类.因为j2e的包里面写好了GenericServlet和HttpServlet类来让我们简化编 ...

  10. 重置CentOS 7的Root密码

    centos7与centos6有很多修改,不一样了,打算写几篇关于日常用到的改动 修改root密码 centos7的用户模式跟6有所不同 1 - 在启动grub菜单,选择编辑选项启动 2 - 按键盘e ...