当前位置: 首页 > 面试题库 >

如何在github存储库的特定标签上“获取”

宗政和韵
2023-03-14
问题内容

我正在尝试使用编译InfluxDB数据库(版本v0.8.8) go get github.com/influxdb/influxdb

但这拉了master分支,我需要v0.8.8标签。

我已尝试做: go get github.com/influxdb/influxdb/releases/tag/v0.8.8但这无法说找不到。

我也试图做一个正规go get的主分支,然后手动检查出使用标签gitGOPATH/src/github...以设置corret版本。

使用最后一种方法的问题是,当我尝试使用其依赖项时,go get -u -f ./...它会尝试在master分支中找到它们,而其中的一些不存在于master分支中。

TL; DRgo get在特定的github标记上执行,并提取正确的依赖项。


问题答案:

无法使用该go get工具。相反,您需要使用第三方go软件包管理工具或为希望管理更细粒度的软件包创建自己的fork。

谈到一个在Google工作的人,他承认了这个问题/要求,他说他的团队使用的供应商规模很大,他们可能很快会用官方工具解决它。

阅读更多:

  • 第三方软件包管理工具的参考
  • Golang团队的博客文章讨论了实现供应商的方法

Go 1.6中的供应商

供应商已经从go
1.6的实验版本中释放
(最初写这篇文章之后),这使使用第三方工具使用特定标签/软件包版本的过程更加容易。go get仍不具备获取特定标签或版本的功能。

有关供应商如何工作的更多信息:了解和使用供应商文件夹

Go 1.11中的模块

Go 1.11发布了称为模块的实验性功能,以改善依赖关系管理,他们希望在Go 1.12中将其稳定发布:有关Go
1.11中模块的信息



 类似资料:
  • 我有一个小型开源图书馆的分叉,我正在github上工作。我想通过maven让其他开发人员可以使用它,但是我不想运行我自己的Nexus服务器,因为它是一个分叉,所以我不能轻松地将它部署到oss.sonatype.org. 我想做的是将它部署到github,这样其他人就可以使用maven访问它。最好的方法是什么?

  • 我还要做什么吗? 我在shell中使用的命令是: 现在,当我键入时,它显示: 我如何让这个标签出现在GitHub上?我的标签呢?

  • 如何在GitHub上配置存储库,以便在不克隆整个存储库的情况下安装程序(任何版本,将有两个存储库)。克隆将通过Linux完成。该程序打包在中。焦油gz格式。

  • 我去了src目录,查看了zlib文件夹,然后看到…。它是空的... 现在,当我转到https://github.com/wxwidgets/wxwidgets/tree/master/src并浏览到zlib文件夹时,它不是空的。但是,在上面的链接中,zlib文件夹被标记了类似“@5888671”的东西。在expat、jpeg、png和tiff文件夹上也有类似的标记。当我克隆存储库时,所有提到的文件

  • 下面的示例显示了如何列出远程标记,而无需克隆repo: 如何像上面的例子一样远程编辑/添加/删除新标签,而无需克隆存储库? 需要克隆回购协议。 有没有办法在不克隆回购协议的情况下实现这一点?

  • 问题内容: 我正在尝试运行一个容器,该容器将公开私有GitHub存储库上的软件包中的golang服务。 由于我与GCE合作,因此我的入门图片是google / debian:wheezy。 安装所有必需的依赖项和工具后,我正在运行 包裹是私人仓库。 我添加了GitHub SSH密钥以允许从私有存储库克隆到docker文件: 尽管如此,当go尝试克隆存储库时,我在go get流程中遇到了一个错误: