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

在Go中使用分叉包导入

富涛
2023-03-14
问题内容

假设您在拥有一个存储库,github.com/someone/repo然后将其分叉到github.com/you/repo。您想使用fork而不是主仓库,因此您需要

go get github.com/you/repo

现在,此存储库中的所有导入路径都将“断开”,这意味着,如果存储库中有多个通过绝对URL相互引用的包,则它们将引用源而不是派生。

有更好的方法手动将其克隆到正确的路径吗?

git clone git@github.com:you/repo.git $GOPATH/src/github.com/someone/repo

问题答案:

处理拉取请求

  • 将存储库派生github.com/someone/repogithub.com/you/repo
  • 下载原始代码: go get github.com/someone/repo
  • 在那里: cd "$(go env GOPATH)/src"/github.com/someone/repo
  • 启用上传到您的fork: git remote add myfork https://github.com/you/repo.git
  • 将您的更改上传到您的仓库: git push myfork

http://blog.campoy.cat/2014/03/github-and-go-forking-pull-requests-
and.html

在项目中使用包

https://github.com/golang/go/wiki/PackageManagementTools



 类似资料:
  • 问题内容: 用go编程语言,为什么在导入软件包后,我仍然必须在该软件包中的方法前面加上软件包名称? 即 这不是多余的吗?例如,在Java中,无需导入文件就可以执行Files.readAllLines等操作。 问题答案: 我想这并不能真正回答您的问题,但是如果您愿意,您实际上可以在不显式说明软件包的情况下调用方法- 只需在名称前面添加一个即可(但不建议这样做;请参见下文): 注意下面@ JIMT的评

  • 我正在开发一个laravel包(我们称之为包a),它需要另一个包(包B)https://github.com/dropbox/dropbox-sdk-php). 我做了一个B包的叉子(https://github.com/EmilioBravo/dropbox-sdk-php),在新的分支“fix64”中进行了一些更改,并在composer中添加my GitHub repo作为存储库。compos

  • 问题内容: 我是新手,正在研究要本地化的示例代码。 在原始的导入语句中,它是: 现在我已经和包 所以我将import语句转换为: 但是当我运行时,出现以下错误: 另外,当我在导入语句中使用and 代替and 时,得到: 我怎样才能解决这个问题? 问题答案: 好吧,我发现了问题所在。基本上,导入的开始路径是 所以我只需要在包名称前面添加,即导入应该是:

  • 主要内容:默认导入的写法,导入包后自定义引用的包名,匿名导入包——只导入包但不使用包内类型和数值,包在程序启动前的初始化入口:init,理解包导入后的init()函数初始化顺序可以在一个 Go语言源文件包声明语句之后,其它非导入声明语句之前,包含零到多个导入包声明语句。每个导入声明可以单独指定一个导入路径,也可以通过圆括号同时导入多个导入路径。要引用其他包的标识符,可以使用 import 关键字,导入的包名使用双引号包围,包名是从 GOPATH 开始计算的路径,使用 进行路径分隔。 默认导入的写

  • 问题内容: 如何在Golang + GAE中导入本地软件包? 我想要这样的事情: 清单my_app.go: package1.go的清单: 在这种情况下,我有一个错误,例如: 感谢帮助。 问题答案: 您需要链接或将软件包复制到应用程序目录。 相对于应用程序目录根目录的路径应与导入路径匹配。 要使用package1,您应该将应用程序目录配置为如下所示: 来自https://groups.google

  • 问题内容: 我创建了由名称的库这是在我的程序作为 并输出如下功能 当我在主程序中使用库时 尝试使用构建时出现以下错误 奇怪的是,库文件libfastget.a位于pkg文件夹中。 问题答案: 您需要使函数的名称可以大写导出: 用作: 规范中提到:“ 导出的标识符 ”: 标识符可以被导出以允许从另一个包访问它。如果同时满足以下条件,则导出标识符 标识符名称的第一个字符是Unicode大写字母(Uni