Android还可以这样开发 2018-04-24
Golang的包管理乱得不行,各种工具横空出世,各显神通啊。用了几个下来,发现 Glide 是比较好用的,使用了 vender 来进行管理,多个开发环境的版本不冲突,功能强大,配置文件也足够简单。
一个已有的工程想要引入glide进行管理
→ glide create
这时,Glide会扫描工程中所有的文件并分析出依赖关系,然后提供选项是跟踪 Minor 还是跟踪 Patch 等选项。最后,Glide 会生成一个基础的配置文件 glide.yaml
。
内容在我的测试工程中,如下:
package: reposkeeper.net/awesomeTestProject import: - package: golang.org/x/net - package: google.golang.org/grpc version: ^1.9.2
Glide 使用 yaml 作为配置文件的格式。顶层的可配置的有下面几个选项:
在上面中,比较重要常用的是 import
,ignore
,excludeDirs
这三个。下面详细说一下。
import 表示了 要导入的包列表,示例的配置方法,看下面:
import: - package: github.com/Masterminds/vcs version: ^1.2.0 repo: [email protected]:Masterminds/vcs vcs: git - package: golang.org/x/net subpackages: - context
package: github.com/Masterminds/glide homepage: https://masterminds.github.io/glide license: MIT owners: - name: Matt Butcher email: [email protected] homepage: http://technosophos.com - name: Matt Farina email: [email protected] homepage: https://www.mattfarina.com ignore: - appengine excludeDirs: - node_modules import: - package: gopkg.in/yaml.v2 - package: github.com/Masterminds/vcs version: ^1.2.0 repo: [email protected]:Masterminds/vcs vcs: git - package: github.com/codegangsta/cli version: f89effe81c1ece9c5b0fda359ebd9cf65f169a51 - package: github.com/Masterminds/semver version: ^1.0.0 testImport: - package: github.com/arschles/assert
配置和操作都比较简单,在日常使用起来,总会遇到包被墙掉的问题。不过作为技术人员,科学上网是基础能力,配一个proxy就可以了。
转载请注明作者和出处(reposkeeper),请勿用于任何商业用途!
关注微信公众号,获取新文章的推送!