• 请不要在回答技术问题时复制粘贴 AI 生成的内容
mss0
V2EX  ›  程序员

话说你们 Go 项目的依赖管理是怎么做的?

  •  
  •   mss0 · May 4, 2018 · 8452 views
    This topic created in 2938 days ago, the information mentioned may be changed or developed.

    开始用的 dep,后来发现同一个库使用 dep ensure -add 安装和使用 go get -u 安装文件的内容会不一样。

    使用 go get 直接把包安到了$GOPATH/src 目录下,那多人协作开发的时候怎么去保证依赖库的版本一致呢?

    22 replies    2018-05-06 02:14:03 +08:00
    xrlin
        1
    xrlin  
       May 4, 2018
    现在 1.10 版本以上有 vgo
    NoMustard
        2
    NoMustard  
       May 4, 2018
    dep ensure 啊 不是有 Gopkg.toml 来保证依赖一致么
    Tinet
        3
    Tinet  
       May 4, 2018
    用的 govendor
    janxin
        4
    janxin  
       May 4, 2018
    dep ensure 如果是有 semver 的库会使用 semver 版本,go get 使用的是 master 分支。

    你可以通过调整 Gopkg.toml 指向 master 分支
    prolic
        5
    prolic  
       May 4, 2018 via Android
    我觉得 github 包不能精确到最后一次 commit 的话怎么做都没法严格保证一致吧,还是塞到 vendor 传 git 上比较靠谱
    twogoods
        6
    twogoods  
       May 4, 2018
    go 官方是时候搞个统一的依赖管理了啊
    hyuwang
        7
    hyuwang  
       May 4, 2018
    vgo 不错 不过我来推荐个小众的 gb + gb vendor
    跟反人类的 GOPATH 说再见
    helloworld12
        8
    helloworld12  
       May 4, 2018
    git,把整个 gopath 放在 git 里面了
    darylc
        9
    darylc  
       May 4, 2018 via Android
    godep
    kkk330
        10
    kkk330  
       May 4, 2018
    glide
    iappled
        11
    iappled  
       May 4, 2018
    @hyuwang gopath 太难用,gb 不错
    puperSB
        12
    puperSB  
       May 4, 2018
    govendor 或者 dep
    xio
        13
    xio  
       May 4, 2018
    vendor 入库
    mritd
        14
    mritd  
       May 4, 2018 via iPhone
    @Tinet 哇,我经常听你头像小姐姐的歌😉
    mritd
        15
    mritd  
       May 4, 2018 via iPhone
    glide
    nino
        16
    nino  
       May 4, 2018
    vgo 只支持 GitHub 啊
    zacharychangzc
        17
    zacharychangzc  
       May 4, 2018
    dep+vendor 上传 git
    Muninn
        18
    Muninn  
       May 5, 2018
    以前用 glide 现在就是 dep 啊

    只是你不会用 dep 而已。。。
    devtiange
        19
    devtiange  
       May 5, 2018
    可惜 gb 已经常年不更新了. GOPATH 确实是 go 里最最傻逼的东西.
    robertzhouxh
        20
    robertzhouxh  
       May 5, 2018
    govendor 妥妥的
    jlkm2010
        21
    jlkm2010  
       May 5, 2018
    试试 vgo ?
    SlipStupig
        22
    SlipStupig  
       May 6, 2018
    最烦恼的是 golang 好多包必须要翻墙才能 get,不知道大家如何解决的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1077 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 67ms · UTC 22:50 · PVG 06:50 · LAX 15:50 · JFK 18:50
    ♥ Do have faith in what you're doing.