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!
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?
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.
workspace
cd
in cd
在 workspace
中,然后 go mod init ./A && go work use ./B
dann go mod init ./A && go work use ./B
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!