拾遗:govendor(Golang 依赖库版本控制)
官方资料:
效果
- 逐层递归向上查找遇到的 vendor 目录,直到找到目标内容
- 若 vendor 目录中没有找到目标,最后会去 go 的标准目录下查找
Quick Start
# Setup your project.
cd "my project in GOPATH"
govendor init # Add existing GOPATH files to vendor.
govendor add +external # View your work.
govendor list # Look at what is using a package
govendor list -v fmt # Specify a specific version or revision to fetch
govendor fetch golang.org/x/net/context@a4bbce9fcae005b22ae5443f6af064d80a6f5a55
govendor fetch golang.org/x/net/context@v1 # Get latest v1.*.* tag or branch.
govendor fetch golang.org/x/net/context@=v1 # Get the tag or branch named "v1". # Update a package to latest, given any prior version constraint
govendor fetch golang.org/x/net/context # Format your repository only
govendor fmt +local # Build everything in your repository only
govendor install +local # Test your repository only
govendor test +local
FAQ
Q: How do I test only my packages?
A: Run govendor test +local.
Q: How do I build install all my vendor packages?
A: Run govendor install +vendor,^program.
Q: How do I pull all my dependencies from network remotes?
A: Run govendor fetch +out.
Q: I have a working program with dependencies in $GOPATH. I want to vendor now.
A: Run govendor add +external.
Q: I have copied dependencies into "vendor". I want to update from $GOPATH.
A: Run govendor update +vendor.
Q: I'm getting missing packages from appengine but I don't care about appengine. How do I ignore these packages?
A: Edit the vendor/vendor.json file. Update the "ignore" field to include "appengine". If you are already ignoring tests, it will look like: "ignore": "test appengine",.
Q: I have modified a package in $GOPATH and I want to try the changes in vendor without committing them.
A: Run govendor update -uncommitted <updated-package-import-path>.
Q: I've forked a package and I haven't upstreamed the changes yet. What should I do?
A: Assuming you've pushed your changes to an accessable repository, run govendor fetch github.com/normal/pkg::github.com/myfork/pkg. This will fetch from "myfork" but place package in "normal".
Q: I have C files or HTML resources in sub-folders. How do I ensure they are copied as well?
A: Run either govendor fetch github.com/dep/pkg/^ or govendor add github.com/dep/pkg/^. This is the same as using the -tree argument.
Q: How do I prevent vendor source from being checked in?
A: Add vendor/*/ to your ignore file.
Q: How do I populate the vendor folder if it has not been checked in?
A: Run govendor sync.
...
拾遗:govendor(Golang 依赖库版本控制)的更多相关文章
- node.js之看懂package.json依赖库版本控制
金天:学习一个新东西,就要持有拥抱的心态,如果固守在自己先前的概念体系,就会有举步维艰的感觉.node.js依赖库的版本控制 一般node.js项目会依赖大量第三方module, 那么如何控制modu ...
- golang 标准库间依赖的可视化展示
简介 国庆看完 << Go 语言圣经 >>,总想做点什么,来加深下印象.以可视化的方式展示 golang 标准库之间的依赖,可能是一个比较好的切入点.做之前,简单搜了下相关的内 ...
- Golang依赖管理工具:glide从入门到精通使用
这是一个创建于 2017-07-22 05:33:09 的文章,其中的信息可能已经有所发展或是发生改变. 介绍 不论是开发Java还是你正在学习的Golang,都会遇到依赖管理问题.Java有牛逼轰轰 ...
- WeedFS依赖库 0.6.1
WeedFS依赖库 版本 0.6.1 =======================================================================glog====== ...
- golang 依赖控制反转(IoC)
主流开发语言,为了达到项目间的低耦合,都会借助IoC框架来实现.即抽象和实现分离,使用抽象层,不用关心这些抽象层的具体实现:抽象层的实现,可以独立实现.现在比较流行的领域驱动设计(ddd),为了达到将 ...
- 使用 Swift Package Manager 集成依赖库
本文首发于 Ficow Shen's Blog,原文地址: 使用 Swift Package Manager 集成依赖库. 内容概览 前言 添加依赖包 在项目中使用依赖 管理已导入的依赖 在团 ...
- 一种优雅的Golang的库插件注册加载机制
一种优雅的Golang的库插件注册加载机制 你好,我是轩脉刃. 最近看到一个内部项目的插件加载机制,非常赞.当然这里说的插件并不是指的golang原生的可以在buildmode中加载指定so文件的那种 ...
- 系列篇|编译可在Android上运行的依赖库(一):glib库
前言 这是系列文章,它们由<编译可在Android上运行的glib库>及其他4篇文章组成,这4篇文章在“编译依赖库”一节中列出.由于glib库依赖于其他第三方库,所以需要先将依赖的第三方库 ...
- 钉钉js依赖库学习
看别人用的依赖库的好处在于,你知道有什么可以用,什么可以借鉴.(钉钉——协作桌面应用) PS:人最怕是不知道,而不是你不会. 1. jQuery 钉钉使用了1.9.1版本的jQuery,jQuery作 ...
随机推荐
- 02 java语言基础
常量:字面值常量(字符串,字符,整数,小数,布尔,null),自定义常量,''这个不是字符常量,""这个是字符串常量 进制: 02.01_Java语言基础(常量的概述和使用) A: ...
- 树的重心(DFS)
;vector< ; i < v[node].size() ; i++){ , ; i <= n- ; i++){ cin >> a >> b; v[a].p ...
- USACO Milk Routing /// 优先队列广搜
题目大意: 在n个点 m条边的无向图中 需要运送X单位牛奶 每条边有隐患L和容量C 则这条边上花费时间为 L+X/C 求从点1到点n的最小花费 优先队列维护 L+X/C 最小 广搜到点n #inclu ...
- teb教程2
http://wiki.ros.org/teb_local_planner/Tutorials/Inspect%20optimization%20feedback 检查优化反馈 简介:怎样检查优化的轨 ...
- GitHub-Hexo-Blog 集成Gitalk评论插件
在本文)末尾可查看先查看效果: 1. 新建New OAuth App 在github中,Settings / Develpoer settings OAuth Apps / New OAuth App ...
- 【读书笔记】剑指offer
导语 所有的编程练习都在牛客网OJ提交,链接: https://www.nowcoder.com/ta/coding-interviews 九章算法的 lintcode 也有这本书的题目.https: ...
- java多线程面试题_线程并发面试题
1.什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速.比如,如果一个线程完成一个 ...
- Java出现OutOf MemoryError(OOM 错误)的原因有哪些?出现OOM错误后,怎么解决?
OutOf MemoryError这种错误可以细分为多种不同的错误,每种错误都有自身的原因和解决办法,如下所示: java.lang.OutOfMemoryError: Java heap space ...
- Eclipse编辑Spring配置文件xml时自动提示类class包名
第一步,先查看下自己的Eclipse是什么版本,步骤如下: 1.1 点击Eclipse菜单‘Help -> About Eclipse’,如下图: 1.2 点击Eclipse图标如下,看清楚哦 ...
- Add cast to是什么意思
eclipse中是强制类型转换的意思.