我正在努力为 go 包设置本地 Mercurial 存储库。
所有 mercurial 包目录都可以位于以下 url 下:
https://server.example.com/go-packages/
我可以通过以下方式克隆一个包:
hg clone https://server.example.com/go-packages/packagename
这很好用。
当我想用go
命令行安装包时:
go get server.example.com/go-packages/packagename
我收到以下错误:
package server.example.com/go-packages/packagename: unrecognized import path "server.example.com/go-packages/packagename"
但是当我按照http://golang.org/cmd/go/中的说明进行操作时:
go get server.example.com/go-packages/packagename.hg
它完美地工作。
在上面的文件中,他们谈到了一个<meta>
标志。所以我用以下条目创建了一个 index.html:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="go-import" content="import-prefix hg repo-root">
<title>packagename</title>
</head>
<body>
<h1>packagename</h1>
</body>
</html>
更新:
当我这样做时,wget -O- https://server.example.com/go-packages/packagename/?go-get=1 --no-check-certificate
我得到:
!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="go-import" content="import-prefix hg repo-root">
<title>packagename</title>
</head>
<body>
<h1>packagename</h1>
</body>
</html>
更新 2
我看到,我的内容是错误的(复制粘贴错误),现在我将其更改为:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="go-import" content="server.example.com/go-packages/packagename hg https://server.example.com/go-packages/packagename" />
<title>packagename</title>
</head>
<body>
<h1>packagename</h1>
</body>
</html>
go-packages
包含 mercurial 存储库的目录在哪里packagename
。
但仍然go get server.example.com/go-packages/packagename
无法正常工作。