大家是怎么处理 vendor 的?

2017-11-21 15:56:14 +08:00
heww  heww
唉,看大家这个说 Golang 值得学,那个说 Golang 越来越火。我就想问下你们的依赖是怎么处理的?

vendor 这个目录是放到 cvs 中了,还是 ignore 了?按照“传统” vendor 是应该被 ignore 的,但忽略了在国内运行 ci 好难受啊!
3123 次点击
所在节点   Go 编程语言  Go 编程语言
29 条回复
sunhr
sunhr
2017-11-21 16:02:04 +08:00
为了 CI 的速度,目前暂时是都提交到 Git 上了
mineyouhe
mineyouhe
2017-11-21 16:22:57 +08:00
就保留 vendor.json 这个文件,其他的随时根据这个文件下载呗
HarrisonZ
HarrisonZ
2017-11-21 16:26:41 +08:00
单独开一个项目维护 vendor
heww
heww
2017-11-21 16:29:03 +08:00
@HarrisonZ 但是有好多项目(比如微服务的模块)的怎么办?维护多个 vendor 吗?
iappled
iappled
2017-11-21 16:30:51 +08:00
直接加到 Git,为了速度
iappled
iappled
2017-11-21 16:31:39 +08:00
按理说依赖不加 git 的,但是因为 qiang,我还是直接加 git 里了,反正都是代码
vicluo96
vicluo96
2017-11-21 16:41:57 +08:00
ignore vendor,用 glide 管理,提交 glide.yaml。CI 设置缓存 vendor 目录
heww
heww
2017-11-21 16:49:09 +08:00
@vicluo96 其实你会发现缓存了 vendor 目录,glide install 的时候也是会很慢的 (主要是要 clone 各 git repo 到 ~/.glide/cache 下,然后和 vendor 下的做比对)。
sophos
sophos
2017-11-21 16:49:53 +08:00
肯定是提交到 git 啊,需要更新再 update 一把就行了
leopku
leopku
2017-11-21 19:31:52 +08:00
前些天刚纠结过这个问题。最后还是选择了忽略。(一个新项目,开始就用的 glide )
theohateonion
theohateonion
2017-11-21 23:08:54 +08:00
我们前后端都是把依赖写好, vendor 在 CI/CD 上自己去下载, 然后打包, 不进代码库.
fhc023
fhc023
2017-11-21 23:30:02 +08:00
heww
heww
2017-11-21 23:56:11 +08:00
@theohateonion CI/CD 自己去下载在国内 clone github 上面的 repo 很慢,有时候还会超时,链接拒绝什么的。
heww
heww
2017-11-21 23:58:13 +08:00
@fhc023 现阶段 glide 比 dep 不知高到哪里去了!
chenqh
chenqh
2017-11-22 00:38:52 +08:00
感觉 go 的包管理太恶心了
WendellSun
WendellSun
2017-11-22 08:47:36 +08:00
提交到 git 了,ci 快一些。
SevenJ
SevenJ
2017-11-22 09:12:56 +08:00
golang/dep
theohateonion
theohateonion
2017-11-22 09:20:39 +08:00
@heww 这个没法解决呀,你自己的机器如果不走 FQ 工具的话, 访问 github 也会有同样的问题呀。 解决办法是使用国内的镜像源.
janxin
janxin
2017-11-22 09:39:35 +08:00
为了 CI 都是提交的,如果没有 CI 就 ignore
cloverstd
cloverstd
2017-11-22 10:27:49 +08:00
必须存起来呀
如果别人把 source 删了咋整

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/408296

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX