Home >Backend Development >Golang >gitlab permission issues when running go mod tidy on Windows 11

gitlab permission issues when running go mod tidy on Windows 11

WBOY
WBOYforward
2024-02-09 20:20:151153browse

在 Windows 11 上运行 go mod tidy 时出现 gitlab 权限问题

php editor Strawberry found that when using the Windows 11 operating system, some developers encountered GitLab permission issues when running the "go mod tidy" command. This issue may result in module dependencies not being updated correctly. To solve this problem, we will provide you with some solutions and suggestions in this article to ensure smooth running of "go mod tidy" command and successful module update.

Question content

I am able to perform clone, push and other git commands (must be stored in the credential manager in windows) just fine. But there is a problem when I execute go mod tidy

The following is the error I encountered when executing go mod tidy on a windows machine. It looks like the private repository cannot be accessed.

gitlab.xxxxx.de/cxxxxs-v2/arc-lib/cxxxxs-go-lib/pkg/clients:
gitlab.xxxx.de/cxxxxs-v2/arc-lib/[email protected]: verifying
module: gitlab.xxxx.de/cxxxxs-v2/arc-lib/[email protected]:
reading
https://sum.golang.org/lookup/gitlab.xxxxx.de/cxxxxs-v2/arc-lib/[email protected]:
404 not found
    server response:
    not found: gitlab.xxxxx.de/cxxxxs-v2/arc-lib/[email protected]: invalid
version: git ls-remote -q origin in
/tmp/gopath/pkg/mod/cache/vcs/387e08be1426cc3d2399d471d4c4b55445c31d6ca639398a03889c4c3282d1d5:
exit status 128:
            fatal: could not read username for 'https://gitlab.xxxxx.de': terminal prompts disabled
    confirm the import path was entered correctly.
    if this is a private repository, see https://golang.org/doc/faq#git_https for additional information.

I have created a home environment variable pointing to the same folder as userprofile.

A _netrc file is also created, which contains the computer, username, and password. Same username and password as used in web gitlab login, works fine.

_netrcContent:

machine gitlab.aaaaaa.de
login ranjit.kumar
password *****

I can't figure out how to debug this to find the root cause and therefore the solution. Please guide me.

Solution

Readhttps://sum.golang.org/lookup/gitlab.xxxxx.de/cidaas-v2/arc-lib/[email Protected]: 404 Not Found

It tries to find your private module in go sumdb. Since your module is private, it doesn't exist.

You should add the private module's glob pattern to goprivate. this way:

go env -w GOPRIVATE=gitlab.xxxxx.de

goprivate Serves as the default for gonoproxy and gonosumdb. It tells the go tool to download the module directly from the private repository (gonoproxy) instead of checking the module using the public checksum database (gonosumdb).

For more information, see Private Modules.

BTW, if you can pull or push to the repository without _netrc, there is no need to set _netrc. Setting the home environment variable doesn't seem to matter either.

The above is the detailed content of gitlab permission issues when running go mod tidy on Windows 11. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:stackoverflow.com. If there is any infringement, please contact admin@php.cn delete