我为GitHub repo(go代码)构建了一个二进制文件,工作正常.没有问题.我分叉了那个repo,并修改了HTML文件中与GO代码无关的单行,为新的分叉存储库构建了二进制文件但是它生成的二进制文件引用了原始的repo代码,无法理解为什么.
我甚至使用go clean -i all命令清除了所有代码并手动删除了所有已安装的代码,来自$ home/go/bin和repo目录的二进制文件,但它仍然引用原始的repo代码而不是新的分叉代码.
之后,我go build在该repo目录中执行,但新的二进制文件仍然引用旧代码.我甚至删除了旧的二进制文件并生成了一个新文件.
这是一个常见的问题."基于位置"的引用系统,因此它在"正确"路径中搜索这些文件.Idk如果去模块解决了这个问题,但至少在不使用go模块时你必须解决它.
你可以解决它
git remote添加awesome-you-fork http://github.com/awesome-you/tool
git pull --rebase awesome-you-fork
git push awesome-you-fork
go get get:你创建原始repo将拥有的路径,但是将你自己的fork克隆到它中.这样你就可以推动你的叉子.这可能是更好的解决方案
cd $GOPATH
mkdir -p {src,bin,pkg}
mkdir -p src/github.com/awesome-org/
cd src/github.com/awesome-org/
git clone git@github.com:awesome-you/tool.git # OR: git clone https://github.com/awesome-you/tool.git
cd tool/
go get ./...
Run Code Online (Sandbox Code Playgroud)
这些解决方案可以在这里找到:http://code.openark.org/blog/development/forking-golang-repositories-on-github-and-managing-the-import-path
| 归档时间: |
|
| 查看次数: |
331 次 |
| 最近记录: |