簡體   English   中英

深入了解庫

[英]Go dep and forks of libraries

我正在嘗試了解如何使用Golang和forks。 情況如下,我正在編寫一個庫project ,該project取決於不是我的庫github.com/other/some_dependency

由於some_dependency缺少了我需要的某些方法,因此將github.com/me/some_dependency分叉到github.com/me/some_dependency 但是,我不能只是go get github.com/me/some_dependency ,該庫引用了自己,所以它壞了。

本文中,他們提供了可能的解決方案:

 go get github.com/other/some_dependency
 cd $GOPATH/src/github.com/other/some_dependency
 git remote add fork git@github.com:me/some_dependency
 git rebase fork/master

現在,這充其量是駭人聽聞的。 從庫代碼中無法得知依賴項來自其他存儲庫。 任何人只要go get我的圖書館都無法使它正常工作。

由於dep有望成為正式的依賴管理器。 我發現了如何修復版本:

dep ensure -add github.com/foo/bar@v1.0.0

但是我找不到如何設置其他遙控器。 有可能做到嗎? 例如,在帶有npm的Node.js中,它非常簡單

npm install git+https://git@github.com/visionmedia/express.git

如果您查看help ,將會看到以下內容:

<import path>[:alt source URL][@<constraint>]

因此,要從位置github.com/fork/bar添加github.com/foo/bar ,您必須像這樣添加它:

dep ensure -add github.com/foo/bar:github.com/fork/bar

源位置將作為source屬性添加到Gopkg.toml

Gopkg文檔依賴關系規則約束和覆蓋

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM