glide使用教程

本文转载自:https://blog.csdn.net/to_be_better/article/details/78149713

glide

安装

go get github.com/Masterminds/glide
 
 

    使用

    进入项目文件夹。!记住,项目必须放在src下,否则会出现很多问题,包括其他包管理工具!

    cd $GOPATH/src/your_project
     
     

      创建glide.yaml文件,并进行相应配置选项

      glide init
       
       

        修改glide.yaml,如果是刚创建的空项目,可以略过这一步。

        默认,glide.yaml生成会加入所有import语句的包路径,那么也就包含我们项目内部的包路径,因此我们需要将它们删掉,并对这类import增加过滤规则。

        安装glide.yaml配置的包

        glide install
         
         

          到这一步,我们的项目初始化就完成了,后续的操作就不再赘述了。

          glide.yml文件

          此处摘自Golang包管理工具Glide,你值得拥有

          glide.ymlglide 包管理的配置文件。下面我们对glide.yml的相关元素进行说明。

          这里是一个完整的glide.yml文件:

          package: github.com/Masterminds/glide
          homepage: https://masterminds.github.io/glide
          license: MIT
          owners:
          - name: Matt Butcher
            email: technosophos@gmail.com
            homepage: http://technosophos.com
          - name: Matt Farina
            email: matt@mattfarina.com
            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:    git@github.com: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
           
           
          • 这些元素是:
            + package:顶部的 package 是它所在GOPATH的位置,glide 将从该位置下开始导包。
            + homepage:该项目的详情页面。
            + license:许可证标识,可以是SPDX license字符串或文件路径。
            + owners:项目的所有者信息,便于接受漏洞信息。
            + ignore:忽略导入的包,注意是包而不是目录。
            + excludeDirs:排除扫描依赖的目录。
            + import:import 的包列表: 
            + package:导入包的名称,必填。软件包名称遵循go工具所用的相同模式。这意味着:
            1、映射到VCS远程位置的软件包名称以.git.bzr.hg.svn结尾。 例如,example.com/foo/pkg.git/subpkg。
            2、GitHub, BitBucket, Launchpad, IBM Bluemix Services, and Go on Google Source是特殊情况,不需要 VCS 扩展。
            + version:可以为semantic version, semantic version range, branch, tag 或者 commit id。
            + repo:如果包名称不是repo位置或这是一个私人存储库,它可以去这里。 该软件包将从repo签出并放在软件包名称指定的位置。 这允许使用fork。
            + vcs:要使用的VCS,如githgbzrsvn。仅当无法从名称中检测到类型时才需要。例如,以.git或GitHub结尾的仓库可以被检测为Git。 对于Bitbucket的repo,我们可以联系API来发现类型。
            + subpackages:在存储库中使用的包的记录。这不包括存储库中的所有包,而是包括正在使用的包。
            + os:用于过滤的操作系统的列表。如果设置它将比较当前运行时操作系统与指定的操作系统,并且只有获取匹配的依赖。如果未设置过滤,则跳过。这些名称与构建标志和GOOS环境变量中使用的名称相同。
            + arch:用于过滤的体系结构列表。如果设置它将比较当前运行时架构与指定的架构,并且只有在匹配时获取依赖关系。如果未设置过滤,则跳过。名称与构建标志和GOARCH环境变量中使用的名称相同。
            + testImport:在导入中未列出的测试中使用的软件包列表。每个包具有与导入下列出的相同的详细信息。

            注意

            1. 项目必须在GOPATH/src内部,强调一下src
          • 0
            点赞
          • 0
            收藏
            觉得还不错? 一键收藏
          • 0
            评论

          “相关推荐”对你有帮助么?

          • 非常没帮助
          • 没帮助
          • 一般
          • 有帮助
          • 非常有帮助
          提交
          评论
          添加红包

          请填写红包祝福语或标题

          红包个数最小为10个

          红包金额最低5元

          当前余额3.43前往充值 >
          需支付:10.00
          成就一亿技术人!
          领取后你会自动成为博主和红包主的粉丝 规则
          hope_wisdom
          发出的红包
          实付
          使用余额支付
          点击重新获取
          扫码支付
          钱包余额 0

          抵扣说明:

          1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
          2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

          余额充值