Home >Backend Development >Golang >Go get reference invalid tag

Go get reference invalid tag

王林
王林forward
2024-02-13 16:36:09601browse

Go get reference invalid tag

php editor Xinyi will introduce to you how to solve the problem of "getting invalid tags for reference". When writing PHP code, sometimes you will encounter an error message that gets an invalid tag referenced. This may be due to incompatible PHP versions or code logic problems. There are many ways to solve this problem, which can be solved by checking the code logic, updating the PHP version, or modifying the code. Next, we will explore step-by-step ways to solve this problem and help you run PHP code smoothly.

Question content

I have been developing a go-based binary and encountered a strange problem.

So I do have package a and package b, where package b is directly referenced in package a.

The main application (package a) uses package b Package b is referenced through its mod file.

So I added the tagged version of package b for package a via go get [email protected] but when I faced some issues I removed it both locally and remotely (github) That version and tag, and creates a tag-based version on the newer commit. github confirms that the new version is based on the new reference, but when I reference the same tag via a new commit, it actually references the same old code version.

Recently, to solve and resolve this issue, I created a tag called v1.1.1, but although it resolved the issue, now even when I reference v1.1.0, it gives me the following message at the end .

root@CaesarPrime-AcerE5:/mnt/d/AppA# go get github.com/xxxx/B@master
go: downloading github.com/xxxx/B v1.11.0
go: downloading github.com/xxxx/xxxxz v0.3.2
go: downloading github.com/xxxx/xxxxd v1.1.1
go: downloading golang.org/xxxx/xxxxv v0.0.0-20220127200216-cd36cc0744dd
go: downloading golang.org/xxxx/xxxxb v0.3.7
go: downloading github.com/xxxx/xxxx v0.0.0-20170810143723-de5bf2ad4578
go: upgraded github.com/xxxx/B v1.1.0 => v1.1.1

I believe this may be due to some caching issue as I don't see the tag v1.1.1 either remotely or locally. But how can this happen if go git pulls something from the remote repository because it has already pulled some late tags that have been removed?

Or maybe I made some embarrassing mistake in package management?

Solution

You are right, the deleted tag may exist in the public proxy of go

go documentation says:

Tags once created should not be deleted or changed to Different revisions. Versions are verified for security, Repeatable builds. If the label is modified, the client may see the security An error occurred while downloading. Even after the tag is deleted, its content May still be available on the module agent.

You can withdraw the version in go.mod by placing a section like this:

retract (
    v1.0.0 // Published accidentally.
    v1.0.1 // Contains retractions only.
)

The above is the detailed content of Go get reference invalid tag. 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