Frage Git Workflow: Teilen Sie Code zwischen Computern, ohne auf öffentliche Repo zu drücken


Ich arbeite in einer Firma, die Git für unsere Versionskontrolle verwendet. Wir verwenden einen gehosteten Repo-Service (Beanstalk) als unser internes "öffentliches" Repo (damit meine ich für das gesamte Entwicklerteam zugänglich). Ich habe zwei Computer, an denen ich normalerweise Code schreibe. Ich mag es, einige der Funktionen zum Umschreiben von Git zu verwenden, insbesondere das Neusenden und Ändern von Commits, aber ich mag es wirklich nicht, sie zu verwenden, nachdem ich etwas in einen veröffentlichten Zweig geschoben habe. Aber ich muss in der Lage sein, Code zwischen diesen beiden Computern zu teilen, und vorzugsweise niemand anderen.

Was ich möchte, ist eine einfache Möglichkeit, meinen Code zwischen den beiden Computern zu teilen, ohne ihn mit allen anderen teilen zu müssen. Ich habe Airdrop (beide Computer sind Macs) und SSH berücksichtigt. Was wäre der vorgeschlagene Weg, dies zu erreichen, während man die verteilte Natur von git ausnutzt?


14
2017-07-10 18:19


Ursprung


Antworten:


Sie können push, hole und pull zwischen den Maschinen frei, vorausgesetzt, Sie haben ssh Zugriff zwischen ihnen:

git push computer2:projects/prog HEAD:tmp

oder, wenn Sie auf Computer2 sind:

git pull computer1:projects/prog HEAD

oder

git fetch computer1:prj/prog branch1:t1
git fetch computer1:prj/prog branch2:t2
git merge t1 t2

oder

git fetch computer1:prj/prog branch1 branch2 branch3
git merge FETCH_HEAD

und so weiter ... Siehe git help fetch für mehr Beispiele.


15
2017-07-10 18:46



Ich sehe nicht, warum Sie keine temporären Arbeitszweige erstellen können, die auf dem Remote-Repo eindeutig als solche gekennzeichnet sind. Wenn Sie jedoch eine Alternative wünschen und beide Computer über das Netzwerk verbunden und über ssh erreichbar sind, können Sie möglicherweise eines oder beide einrichten sie als zusätzliche Fernbedienungen und schieben von einer in die andere Richtung. Es kann jedoch verwirrend sein, es beim ersten Mal richtig zu machen, da Sie nicht auf die falsche Fernbedienung drücken möchten.


1
2017-07-10 18:36



Sie können einen Instant-Git-Server auf einem der Computer ausführen, entweder mit git-daemon oder ähnlichem: https://gist.github.com/1525217


0
2017-07-10 18:33