Modules和Vendor
-
Vendorgit
- 使用的時候,代碼依舊要放在go path路徑下
- 每一個項目都要有一個vendor項目,而後下載到項目下的此目錄,重複率很高
-
modulesgithub
- 能夠放在任何目錄,配置好代理,下載方便,都在一個倉庫文件,不用重複下載
modules怎麼面對,非正規的路徑
- 以bytom來講,可能由於某些緣由,致使path路徑和代碼中包使用路徑不一致
- 代碼中import的路徑:github.com/vapor
- github上的代碼路徑:github.com/Bytom/vapor
若是我想使用這個代碼中的函數,怎麼引用呢?
使用replace爲導入的包指定下載的路徑
replace github.com/vapor v0.1.0 => github.com/Bytom/vapor v0.1.0
在go.mod文件中添加這一行代碼,那麼就能夠在你的代碼中隨意使用了函數
import (
"github.com/vapor/common"
"github.com/vapor/consensus"
"github.com/vapor/consensus/segwit"
)
遇到這樣的問題,還有什麼方式解決呢?
- 能夠在GitHub上提issue(固然因爲項目很大,可能沒法修改,即便你們都知道這個問題)
- 使用vendor