In diesem Artikel verrät Ihnen der PHP-Editor Youzi, wie Sie mit dem Problem „How to fork? Error: Found, but the package is not Included“ umgehen können. Dieser Fehler tritt normalerweise bei Verwendung eines Versionskontrollsystems auf und weist darauf hin, dass das System den entsprechenden Zweig gefunden hat, aber das erforderliche Paket oder die erforderliche Datei nicht enthielt. In diesem Artikel erklären wir, wie dieser Fehler diagnostiziert und behoben wird, um den normalen Betrieb des Projekts sicherzustellen. Egal, ob Sie Anfänger oder erfahrener Entwickler sind, dieser Artikel bietet Ihnen nützliche Lösungen und Ratschläge. Lassen Sie uns dieses Problem gemeinsam lösen!
Lauf:
go install github.com/google/[email protected] go install github.com/googleapis/[email protected]
Dieses Tool funktioniert:
gnostic --grpc-out=./target ./source.yaml
Ich habe die Bibliothek https://github.com/google/gnostic-grpc geforkt und so geändert, dass keine Snake-Case-Konvertierung durchgeführt wird, und ich habe das Paket auch umbenannt github.com/thlib 的所有引用/gnostic-grpc
, damit es installiert werden kann.
Dann habe ich versucht, es zu installieren:
go install github.com/thlib/gnostic-grpc@04d3e8500daa070fbe8c6118fe3b62e42d4a9b1f
Außerdem:
go install github.com/google/[email protected] go install github.com/thlib/[email protected]
Aber es wird ein Fehler ausgegeben:
go: downloading github.com/thlib/gnostic-grpc v0.1.3 go: github.com/thlib/[email protected]: module github.com/thlib/[email protected] found, but does not contain package github.com/thlib/gnostic-grpc
Ich verstehe nicht, was ich falsch gemacht habe.
go mod init github.com/thlib/gnostic-grpc && go mod tidy
Dann git clone
d Original, jetzt bin ich noch verwirrter, wie funktioniert das?
go install github.com/google/[email protected] go install github.com/googleapis/[email protected]
Auf der Root-Ebene scheint es keine zu geben main.go
包,go install
Woher wissen Sie, was installiert werden muss?
Außerdem: Wenn ein Paket beispielsweise eine Verwendung eines nicht deklarierten Typs enthält, wie wird es dann installiert? /incompatibility
有 apisetincompatibility
, es ist nirgendwo deklariert, sollte das nicht ein Fehler sein?
Das ist ein Fehler in der offiziellen Beschreibung, es scheint, dass sie den Fehler irgendwann auch gemacht haben:
go install github.com/google/[email protected] go install github.com/google/[email protected]
Ich habe mir diese Fragen (und andere Fragen und Reddit-Beiträge usw.) angesehen und sie scheinen unterschiedlich zu sein:
Wenn ein Paket beispielsweise die Verwendung eines nicht deklarierten Typs enthält, wie wird es dann installiert? /incompatibility hat ApiSetIncompatibility, das nirgendwo deklariert ist. Sollte das nicht ein Fehler sein?
ApiSetIncompatibility wird nach der Proto-Kompilierung in der .pb-generierten Datei deklariert. Sie finden es in der Datei incompatibility/incompatibility-report.proto in Zeile 88. Um dieses Problem zu lösen, müssen Sie also zunächst die .pb-Datei mit protoc generieren.
Das obige ist der detaillierte Inhalt vonWie forkt man? Fehler: gefunden, enthält aber kein Paket. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!