2016-08-31 3 views
2

Ich entwickle über 3 verschiedene Plattformen, Windows, OS X und Ubuntu Linux.
Ich benutze Dropbox, um meinen Code zwischen allen 3 Plattformen zu synchronisieren.
Das Problem, das ich habe, ist kompilierte Binärdateien auf OS X und Linux erhalten den gleichen Namen, so dass Binärdateien in meinem GOPATH immer gegenseitig überschreiben. Ich habe dieses Problem nicht mit Windows, weil Binärdateien immer mit einer .exe Erweiterung kompilieren.Wie teilen Sie Ihre GOPATH über Dropbox (oder ähnlich) über mehrere Plattformen

Hat jemand anderes dieses Problem erlebt, und wenn ja, wie haben Sie es geschafft?

Antwort

2

1- gesetzt GOBIN Pfad zu trennen (zB nur für OS X) und verwenden

go install

Command go:

Wenn die GOBIN Umgebungsvariable gesetzt ist, Befehle an den installiert Verzeichnis, das es anstelle von DIR/bin benennt. GOBIN muss ein absoluter Pfad sein.


2- Auch können Sie die Ausgabedatei umbenennen:

go build [-o output] [-i] [build flags] [packages] 

So:

go build -o newname 

Die Option -o, nur dann erlaubt, wenn ein einzelnes Paket kompilieren , erzwingt Build, um die resultierende ausführbare Datei oder das Objekt in die benannte Ausgabezu schreibenDatei.


Siehe auch: How do I use a Samba server location for GOPATH?

1

Die Lösung ist einfach: nur in Ihrem Computer die $GOPATH/src Ordner freigeben, gibt es wirklich keine Notwendigkeit, die kompletten $GOPATH als Paketobjekte ($GOPATH/pkg) und Binärdateien zu teilen ($GOPATH/bin) kompiliert zu einer Plattform haben keine wirkliche Verwendung auf anderen Plattformen, und sie sind durch eine einfache Kompilierung reproduzierbar.

Dies reduziert auch den Speicher und die Bandbreite. Wenn Sie aus irgendeinem Grund die kompilierten Binärdateien für andere Plattformen benötigen, verfügt das Tool go über eine integrierte Unterstützung für die Kreuzkompilierung, z. GOOS=windows go build wird Sie einfach die ausführbare Windows-Binärdatei des Pakets, dessen Ordner Sie in einem Betriebssystem sind, in den aktuellen Ordner (Sie können auch die Architektur mit GOARCH ändern).

Eine andere Möglichkeit wäre, Ihren Code unter eine Quellcodeverwaltung zu stellen, z. git (github.com), die auch Geschichte bewahrt. Das Tool go unterstützt auch den einfachen Zugriff auf den Quellcode aus einem Git-Repository, z. go get -u github.com/youruser/yourpackage.

Verwandte Themen