Laravel-Projekte von verschiedenen Clients weiterentwickeln?

Dsimon24

Lieutenant
Registriert
Aug. 2016
Beiträge
595
Hallo zusammen,

ich arbeite gerade an ein paar Laravel-Applicationen.
Dazu nutze ich Sail für Laravel (Docker), GitHub für´s Hosting und JetBrains (PhpStorm) als IDE.

Kommt vor, dass ich einmal vom Mac, einmal vom Windows Rechner aus arbeite. Ich möchte aber
ungern jede halbfertige Funktion auf GitHub committen und würd gerne die Entwicklung mal am
Mac, mal am Windows fortsetzen. Wie es zeitlich gerade bei mir passt.

Habt ihr einen Vorschlag, wie ich am sinnvollsten die Laravel-Applicationen auf beide Geräte mög-
lichst synchron halten kann um von der einen auf die quasi andere Minute den Rechner wechseln kann?

Habe schon daran gedacht, den Code ganz altmodisch in bspw. OneDrive zu speichern,
aber könnte mir auch vorstellen, dass es da auf Dauer zu Problemen mit dem Sync kommen könnte.

Habt ihr Ideen für mich (möglichst einfach umzusetzen)?

Grüße,
 
Dsimon24 schrieb:
Ich möchte aber
ungern jede halbfertige Funktion auf GitHub committen
Wieso? Kannst die Commits doch squashen, bevor du nen Pull Request aufmachst. Oder am anderen Rechner den Commit wegschmeiße, sodass nur deine Änderungen bleiben.
 
  • Gefällt mir
Reaktionen: BeBur
Dsimon24 schrieb:
Habt ihr einen Vorschlag, wie ich am sinnvollsten die Laravel-Applicationen auf beide Geräte mög-
lichst synchron halten kann um von der einen auf die quasi andere Minute den Rechner wechseln kann?
Das beste wäre git dafür zu nutzen, es ist genau dafür gebaut worden. Cloud-Dienste wie OneDrive gehen zwar auch, bringen aber die Gefahr der Korruption mit sich, ohne wirklich Vorteile zu bieten. Da Du alleine entwickelst ist das Risiko gering, die Bedienung ist aber nur scheinbar leichter.

Git erlaubt Dir mehrere Remotes anzulegen, also "Server" denen Du Deine Änderungen zuschieben kannst.
Nehmen wir an, Du hast ein git Repository mit Deinem Projekt "MyApp" unter github.com/Dsimon24/MyApp.
Normalerweise legt git den (das?) Remote mit dem Namen "origin" an, das kannst Du nachschauen mit
Bash:
git remote -v
Du kannst jetzt einfach ein zweites Repository auf Github anlegen, z.B. "MyApp-mirror" unter github.com/DSimon24/MyApp-mirror und dieses auf private stellen. Somit kann niemand außer Dir auf dieses Spiegelrepository zugreifen. Das ist wichtig, damit Du jeden erdenklichen Scheiß pushen kannst, ohne, dass es Probleme gibt.
Mit
Bash:
git remote add mirror github.com/DSimon24/MyApp-mirror
fügst Du das Spiegelrepository als Remote hinzu und nennst es "mirror".
Wenn Du jetzt bspw. auf dem Branch "dev" arbeitest und Deinen Arbeitsplatz wechseln möchtest, dann kannst Du folgendes tun:
Code:
# füge alle Änderungen der Staging Area hinzu (Dateien für Commit wählen)
git add *
# erstelle Commit mit allen Dateien mit der Commitmessage "zwischenstand"
git commit -m "zwischenstand"
# schiebe die Änderungen (jetzt committed auf Branch "dev") ins Spiegelrepository "mirror"
git push -u mirror dev
Am anderen Arbeitsplatz kannst Du jetzt ganz normal mit fetch/pull das Spiegelrepository abfragen und weiterarbeiten.
Besser wäre natürlich schon ordentliche Commits zu erstellen, aber meiner Erfahrung nach ist Entwicklung ein großes Chaos und ich fahre ganz gut damit, bevor ich dann ins eigentliche Repo pushe, mit
Code:
git reset HEAD~123
die letzten 123 Commits die alle "Zwischenstand" heißen zu entfernen und nochmal neu und strukturiert zu commiten.

Ich nutze das auch ganz gerne um "zwischenstände" abzuspeichern (da funktioniert gerade was, aber ich bin mir nicht sicher ob ich nicht was anderes kaputt gemacht habe) und wieder zurückzugehen.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: BeBur
Zurück
Oben