Best Practices für die Arbeit mit zwei Github Go-Projekten

王林
Freigeben: 2024-02-08 23:48:31
nach vorne
759 Leute haben es durchsucht

处理两个 github go 项目的最佳实践

php-Editor Baicao bietet Ihnen eine Einführung in die Best Practices für den Umgang mit zwei GitHub Go-Projekten. Während des Entwicklungsprozesses müssen wir uns häufig mit Abhängigkeiten und der Code-Zusammenarbeit zwischen mehreren Projekten befassen. In diesem Artikel werden einige effektive Methoden und Vorschläge vorgestellt, die Ihnen dabei helfen, die Projektstruktur zu optimieren, Abhängigkeiten zu verwalten, Konflikte zu lösen und die Wartbarkeit und Skalierbarkeit Ihres Codes zu verbessern. Sowohl Einsteiger als auch erfahrene Entwickler können davon profitieren und die Entwicklungseffizienz und Projektqualität verbessern. Lassen Sie uns diese Best Practices gemeinsam erkunden!

Frageninhalt

Ich entwickle zwei Golang-Projekte basierend auf Github, von denen eines vom anderen abhängt.

Angenommen, ich habe Projekt A (github.com/A), das von Projekt B (github.com/B) abhängt. Jetzt nehme ich Änderungen an Projekt B vor, pushe den Code und führe go get github.com/B in Projekt A aus, um den neuesten Code für Projekt B zu erhalten.

Dieser Prozess ist sehr zeitaufwändig und klingt für mich nicht richtig. Ich dachte, der GO_PATH-Speicherort der geänderten Dateien von Projekt B, aber es scheint, dass das heruntergeladene GO_PATH-Projekt schreibgeschützt ist.

Gibt es einen besseren Weg, dies zu tun?

Lösung

Golang-Arbeitsbereich verwenden

Wenn Ihre Golang-Version 1.18+ ist, können Sie die Arbeitsbereichsfunktion nutzen, um Ihre Entwicklungserfahrung zu verbessern.

Lassen Sie uns Ihr Beispiel verwenden, damit wir github.com/A,它依赖于 github.com/B haben.

  1. Stellen Sie sicher, dass sie sich im selben übergeordneten Ordner befinden. Nehmen wir an, der Ordner heißt workspace
  2. cd in cdworkspace 中,然后 go mod init ./A && go work use ./B dann go mod init ./A && go work use ./B
  3. Run go in <code>workspace 中运行 go 运行 github.com/A run github.com/A

Das Ergebnis ist, dass Sie in Ihrer lokalen Entwicklungsumgebung immer die lokale Version verwenden github.com/B, sodass keine Remote-Synchronisierung erforderlich ist.

Wenn Sie eine frühere Version von Go verwenden, ist es meiner Meinung nach die beste Option, einige Skripte zu schreiben, um diesen Prozess zu automatisieren

Das obige ist der detaillierte Inhalt vonBest Practices für die Arbeit mit zwei Github Go-Projekten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage