go - go get -u 对带有 go1 分支的包失败
问题描述
我正在分发一个 go 包,它需要大量生成的文件,我不想将这些文件包含在master
我的 git 存储库的分支中。我希望人们能够使用go get
. 由于go get
doesn't run go generate
,我的解决方案是将所有生成的文件粘贴到一个go1
分支中,该分支是一次提交,master
但也包括所有生成的文件。我还可以向go1
分支添加第二个假父提交,这样无论人们获取go1
它总是一个快进合并。go1
只要master
保持原始状态,我不在乎树枝变得多么丑陋。
这种技术第一次效果很好。不幸的是,即使分支根本没有改变,每次后续调用都会go get -u
失败,因为将签出的存储库留在分离的 HEAD 状态而不是在分支上。我可以通过手动深入我的 gopath 来解决这个问题,这将创建一个本地分支跟踪,但是必须指示其他人这样做非常烦人。在这一点上,我最好只与 gopath 系统作斗争并告诉人们使用 Makefile 构建软件。go1
go get
go1
git checkout go1
go1
origin/go1
关于如何解决这个问题的任何想法,或者告诉人们什么?我真正不想做的一件事是在服务器上运行git symbolic-ref
更改HEAD
,因为master
确实需要成为所有开发人员的默认分支。无论如何,HEAD
不需要在服务器上进行更改,因为go get
选择获取go1
分支的人,那么为什么不创建一个go1
从中提取的本地分支origin/go1
呢?
解决方案
原来这只是 cmd/go 中的一个错误。这是该问题的链接:
https://github.com/golang/go/issues/27526
如果这个错误在 1.12 中得到修复,那么我想做的就可以了。
推荐阅读
- sql - (一张表)插入行
- python - 使用 Python 代码按日期提取数据并另存为单独的 csv 按日期
- r - 删除第一行值为 NA 的列
- ansible - 如何在我的 j2 模板中使用主机名?我在尝试时遇到了一些错误
- python - 无法为 python 2.7.12 安装 scikit-image
- html - 如何用纯css实现红绿灯的灯光颜色变化?
- vba - 如何选择事件日期为周末的所有记录并导出到另一个表
- javascript - 输出中的附加零
- c++ - 您可以使用自定义比较器将 std::map 变成无序映射吗?
- mysql - 为什么 count(column) 和 count(*) 返回相同的输出,即使记录中有 NULL 值?