mercurial - 为什么我无法使用 go get 获取 gotour?

标签 mercurial go

所以我决定要学习go ,所以我开始了 tour 。在 stage 3在该游览中,他们建议使用 go checkout 该游览的副本并在本地运行它,因此我通过推荐的 installer package 安装了 mac 版 go。 .

然后,我有了可用的 go 命令,因此我按照导览中的建议运行了 go get code.google.com/p/go-tour/gotour

它在游览中显示“然后运行生成的 gotour 可执行文件”。找不到可执行文件。

go get 的输出是这样的:

package code.google.com/p/go-tour/gotour: Get https://code.google.com/p/go-tour/source/checkout?repo=: EOF

我知道 EOF 意味着文件结束,但我不确定这是否是错误消息。

我安装了hg:

$ hg --version
Mercurial Distributed SCM (version 2.3.1)

我设置了我的 $GOPATH (并且该文件没有出现在那里):

echo $GOPATH
/Users/alex/.golib

运行go env返回:

GOROOT="/usr/local/go"
GOBIN=""
GOARCH="386"
GOCHAR="8"
GOOS="darwin"
GOEXE=""
GOHOSTARCH="386"
GOHOSTOS="darwin"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_386"
GOGCCFLAGS="-g -O2 -fPIC -m32 -pthread -fno-common"
CGO_ENABLED="1"

如果有帮助,我正在使用 fish作为我的外壳。

我做错了什么?

最佳答案

a go get (与 go get -u 相反)将获取、编译并安装您想要在 中的 go 模块$GOPATH
可执行文件 gotour 将位于 $GOPATH/bin 中。

因此请确保您的路径中有 $GOPATH/bin

执行后,您应该看到:

2012/09/15 10:43:57 Serving content from $GOPATH/src/code.google.com/p/go-tour
2012/09/15 10:43:57 Open your web browser and visit http://127.0.0.1:3999/

注意(个人偏好):我会使用比 /Users/alex/.golib 更可见的路径:/Users/alex/go
GOPATH 不仅仅是为了获取一些库,而是为了开发所有的 go 项目。

关于mercurial - 为什么我无法使用 go get 获取 gotour?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12435348/

相关文章:

mercurial - 如何在没有 PuTTY 的情况下从命令行使用 TortoiseHg (Pageant)

go - 在 golang 中写一个字符串的两个部分

go - 条件超时

go - 制作使用nmap的多个goroutine

git - 我如何向非程序员解释源代码控制(特别是 Mercurial/Tortoise)?

permissions - 使用 Mercurial/Tortoisehg 有没有办法设置存储库权限?

mercurial - 是否可以使用 Mercurial 从/推送到 SourceGear Vault 存储库?

mercurial - 克隆后存储库中的文件,但没有历史记录

go - 解析文本文件以匹配字符串并提取值(在 Golang 中)

sql - Go 模板用于连接 slice 中的查询