2016-08-02 32 views
7

我對Golang很新。我看到在Golang中,您可以直接從Github導入包,例如:Golang,從Github導入包要求我記住Github的URL?

import "github.com/MakeNowJust/heredoc" 

這是否意味着我必須記住此URL才能使用此包?恕我直言,這不是很酷。如果以後該軟件包的作者將其刪除或更改了URL,該怎麼辦?有任何想法嗎?

+4

如果包作者刪除其包裝,則在任何其他語言中都會出現同樣的問題。您可以使用[glide](https://github.com/Masterminds/glide)等工具下載並剝離供應商軟件包的vcs,以將軟件包文件推送到您自己的回購站。 – huygn

+0

另請參閱[關於Go的包管理的wiki條目](https://github.com/golang/go/wiki/PackageManagementTools)。今天炒作的其他工具是(無特定順序):'godep','govendor'和'gb'。 – kostix

+0

這實際上是一個有趣的問題。也許不是完美的表達方式,但它與整個銷售和依賴管理討論非常類似 – serverhorror

回答

18

我建議您閱讀How to Write Go Code文檔和this博客文章。

您在導入行中看到的路徑不是url,而只是包的路徑(通常相對於$GOROOT/src/pkg$GOPATH/src)。所以你的包heredoc很可能位於目錄$GOPATH/src/github.com/MakeNowJust/heredoc

推薦使用外部軟件包的方法是通過go get下載並安裝它們。您可能想查看go get --help獲取的文檔。

+0

因此,它基本上是這麼說的:「不,你不能直接從Go中導入包,它的教程只是讓它聽起來像這樣。正確? – DailyFrankPeter

+0

是的,你必須下載一個軟件包才能使用它。 – tsabsch

1

不要擔心男人!您可以使用glide工具進行包管理