相关疑难解决方法(0)

Git - 如何在Windows上使用.netrc文件来保存用户和密码

当我使用Git克隆带有HTTP和用户密码的远程存储库时,是否可以在Windows上使用.netrc文件?

windows git authentication

168
推荐指数
3
解决办法
10万
查看次数

Go build:"找不到包"(即使设置了GOPATH)

即使我已经GOPATH正确设置,我仍然无法"go build"或"go run"来找到我自己的包.我究竟做错了什么?

$ echo $GOROOT
/usr/local/go

$ echo $GOPATH
/home/mitchell/go

$ cat ~/main.go
package main
import "foobar"
func main() { }

$ cat /home/mitchell/go/src/foobar.go
package foobar

$ go build main.go
main.go:3:8: import "foobar": cannot find package
Run Code Online (Sandbox Code Playgroud)

build package go

111
推荐指数
5
解决办法
17万
查看次数

如何设置 GOPRIVATE 环境变量

我开始研究一个Go项目,它使用 Github 私有存储库中的一些私有模块,每当我尝试运行go run main.go它时,都会出现以下410 Gone错误:

验证 github.com/repoURL/go-proto@v2.86.0+incompatible/go.mod:github.com/repoURL/go-proto@v2.86.0+incompatible/go.mod:阅读https://sum.golang。 org/lookup/github.com/!repoURL/go-proto@v2.86.0+incompatible : 410 Gone

我可以轻松地从终端克隆私有 repo,这意味着我的ssh密钥配置正确。我在这里读到我需要设置GOPRIVATE环境变量,但我不知道该怎么做。

任何人都可以回答或指向相关教程吗?

转到: v1.13,操作系统: macOS Mojave

environment-variables go go-modules

52
推荐指数
3
解决办法
5万
查看次数

如何使用私人Gitlab回购GoLang?

Gitlab是一种免费的,开源的托管私有.git存储库的方式,但它似乎不适用于GoLang.创建项目时,它会生成以下形式的URL:

git@1.2.3.4:private-developers/project.git
Run Code Online (Sandbox Code Playgroud)

哪里:

  • 1.2.3.4 是gitlab服务器的IP地址
  • private-developers 是一个可以访问私人仓库的用户组

Golang 1.2.1似乎不理解这种语法.

go get git@1.2.3.4:private-developers/project.git
Run Code Online (Sandbox Code Playgroud)

结果是:

package git@23.251.148.129/project.git: unrecognized import path "git@1.2.3.4/project.git"
Run Code Online (Sandbox Code Playgroud)

有没有办法让这个工作?

git get package go gitlab

35
推荐指数
5
解决办法
3万
查看次数

来自Bitbucket的'Go Get'私人回购

所以基本上,我有一个Openshift项目,在Git推送下,使用'Go get'下载所有库并在运行中构建项目,所以,我有一些代码,我不希望别人从我自己的库中看到,并且为了正确编译,代码需要从github.com或其他repo中获取,所以我创建了一个私有的bitbucket.org repo,现在,作为一个公共回购它工作正常,但是当我试图'Go Get'时来自我的私人回购,它给了我'Forbidden 403'

我怎样才能避免这种情况发生?感谢您阅读并度过美好的一天!

git bitbucket go

28
推荐指数
2
解决办法
2万
查看次数

在个人git repo上使用"go get"

我在个人VPS上托管我的git存储库,我有一个我想要"go get"的软件包.我试图通过发出"go help importpath"找到帮助文档,但没有运气.无论我做什么,我都会收到以下错误:

package example.com/user/package: unrecognized import path "example.com/user/package"
Run Code Online (Sandbox Code Playgroud)

我已经尝试了所提到的META标签的每个组合以及相同的结果.

<meta name="go-import" content="example.com git http://example.com/user/package">
Run Code Online (Sandbox Code Playgroud)

可以通过http://example.com/user/package.git访问实际的git存储库.我可以直接克隆它,但我想去下载并正确安装它.

根据帮助文档,如果go向http://example.com/user/package?go-get=1发出请求,则返回的页面包含META标记.如果go然后向http://example.com/?go-get=1发出后续请求,则返回的页面也包含完全相同的META标记.

是否需要在服务器上进行任何特殊配置?我不这么认为,因为go会通过http请求访问存储库.

我的智慧结束了.我们将非常感谢您提供的任何帮助.

git go

13
推荐指数
1
解决办法
4293
查看次数

在 docker 中使用 gitlab 私有仓库作为 golang 依赖

我正在我的组织 gitlab 组中镜像一个流行的 go 库(用于冗余)。

在我的代码中,我有: import ( "gitlab.com/org/group/library.git" )

我使用这个答案来指导如何使用带有私有存储库的 go get。在我的机器上go get ./...工作是因为我使用以下命令配置了 git:

$ git config --global url.git@gitlab.com:.insteadOf https://gitlab.com/
Run Code Online (Sandbox Code Playgroud)

当我尝试构建 docker 容器时,命令RUN go get ./...失败并显示以下输出:

package gitlab.com/org/group/library.git: cannot download, git://gitlab.com/org/group/library uses insecure protocol
Run Code Online (Sandbox Code Playgroud)

似乎来自类似线程本文的流行答案是执行诸如将 ssh 密钥上传到 docker 容器之类的操作。我真的对此感到不舒服,因为我不完全了解正在做什么或安全隐患。

任何有关如何正确配置我的 dockerfile 或我的 golang 工作流程的见解都会有很大帮助。

go gitlab docker

6
推荐指数
1
解决办法
1574
查看次数

“go get”无法下载 go 包,Git 存储库托管在 Github Entreprise 上(在 VPN 后面)

我正在尝试下载 Entreprise Github 上的 Go 软件包。

值得注意的是,该域在 VPN 外部不可见,但我已连接到该 VPN。

我可以使用浏览器浏览https://github.mydomain.com/some_repository,但需要登录。

$ go get -v github.mydomain.com/some_repository

get "github.mydomain.com/some_repository": found meta tag get.metaImport{Prefix:"github.mydomain.com/some_repository", VCS:"git", RepoRoot:"https://github.mydomain.com/some_repository.git"} at //github.mydomain.com/some_repository?go-get=1
go: downloading github.mydomain.com/some_repository v0.0.0
go get github.mydomain.com/some_repository: github.mydomain.com/some_repository@v0.0.0: verifying module: github.mydomain.com/some_repository@v0.0.0: reading https://sum.golang.org/lookup/github.mydomain.com/some_repository@v0.0.0: 410 Gone
        server response: not found: github.mydomain.com/some_repository@v0.0.0: unrecognized import path "github.mydomain.com/some_repository": https fetch: Get "https://github.mydomain.com/some_repository?go-get=1": dial tcp: lookup github.mydomain.com on 8.8.8.8:53: no such host
Run Code Online (Sandbox Code Playgroud)

我最初认为这是由于命令行工具没有访问令牌,因为浏览器可以访问但不能访问go get。我在 Entreprise Github 上生成了一个令牌,并尝试通过以下方式解决此问题:

git config --local http.extraheader "PRIVATE-TOKEN: <token>"
git config …
Run Code Online (Sandbox Code Playgroud)

git github go github-enterprise

6
推荐指数
1
解决办法
8272
查看次数

如何将 Go 与 Bitbucket 私有存储库一起使用?

我们使用私有 Bitbucket 存储库来管理我们的 Go 库。通过使用例如在这个Stackoverflow answer 中描述的insteadOf配置,我们有一个工作构建到 Go 版本 1.12。1.13 和 1.14 版本不再起作用。我们看到这样的错误:git

$ go vet ./...
go: downloading bitbucket.org/travelloapp/golibs v1.0.42
usercache/usercache.go:6:2: bitbucket.org/travelloapp/golibs@v1.0.42: verifying module: bitbucket.org/travelloapp/golibs@v1.0.42: reading https://sum.golang.org/lookup/bitbucket.org/travelloapp/golibs@v1.0.42: 410 Gone
        server response:
        not found: bitbucket.org/travelloapp/golibs@v1.0.42: reading https://api.bitbucket.org/2.0/repositories/travelloapp/golibs?fields=scm: 403 Forbidden
                server response: Access denied. You must have write or admin access.
Run Code Online (Sandbox Code Playgroud)

转到FAQ建议设立curl~/.netrc文件。我已经做到了,使用 Bitbucket 的“应用密码”功能。它不会改变结果。我已经添加了bitbucket.orgapi.bitbucket.org作为主机名。

我可以curl直接测试文件设置是否正确:

$ curl -n https://api.bitbucket.org/2.0/repositories/travelloapp/golibs?fields=scm
{"scm": "git"}
Run Code Online (Sandbox Code Playgroud)

记录:尽管有 Bitbucket 错误消息。存储库读取访问似乎是唯一需要的权限,尽管我也尝试过启用所有权限。 …

git bitbucket go go-modules

5
推荐指数
1
解决办法
3775
查看次数

获取私人 bitbucket 存储库,给出 403 禁止

执行时 go get bitbucket.org/../..

我收到这个错误

yash.jain projectname % go get bitbucket.org/../..
go: bitbucket.org/../..
https://api.bitbucket.org/2.0/repositories/../..?fields=scm: 403 Forbidden
go: error loading module requirements
Run Code Online (Sandbox Code Playgroud)

我尝试过的

尽管如此,我还是遇到了同样的错误。如果我做错了什么,请告诉我。

go go-get

4
推荐指数
1
解决办法
9099
查看次数

如何使用本地服务器上的 repo 开始工作

我在本地服务器上有一个 git repo。我可以使用git clone user@10.xxx.yyy.zzz:/srv/git/liqid.git用户具有 ssh 访问权限和读/写到 git/ 目录的方式从它进行克隆。

当我尝试使用它时,go get -v user@10.xxx.yyy.zzz:/srv/git/liqid.git它会给出

go: cannot use path@version syntax in GOPATH mode

我尝试了各种其他组合,例如省略了:,但它们都失败了。

可以go get在本地服务器上使用 repo 吗?

github go

1
推荐指数
1
解决办法
740
查看次数