Das WLED Projekt wird stetig weiter entwickelt. Damit die Neuerungen und Verbesserungen in die usermods einfließen könne, müssen diese von Zeit zu Zeit aktualisiert werden. Der prinzipielle Workflow ist wie folgt.
Bevor der branch nach der Aktualisierung auf dem Repository überschrieben wird, sollten die Anpassungen ausreichen getestet werden da mit dem beschriebenen Vorgehen die letzte Version verloren geht.
Vorgehensweise:
Auf Github anmelden (Account wird benötigt)
-
Button Sync fork drücken (Account muss Mitglied von Sternenlabor sein) - der main Branch des Sternenlabor Repos wird nun auf den Stand des original Repos aktualisiert
VS-Code öffnen
Auf main Branch wechseln (Status Bar links unten)
Auf der Linken Seite das Quellcodeverwaltungs Icon (GIT) drücken (Icon mit drei verbundenen Bobbeln)
Im Quellcodeverwaltungs Bereich das Icon mit den drei Punkten anklicken
Pull auswählen
Auf gewünschten usermod branch wechseln
Auf der Linken Seite das Quellcodeverwaltungs Icon (GIT) drücken (Icon mit drei verbundenen Bobbeln)
GIT Graph Icon links vom drei Punkte Icon anklicken
Rechtsklick auf den letzten commit im main/origin branch (grafische Kennzeichnung)
Rebase current branch on Branch… auswählen
Es werden nun alle Commits des aktuellen branches bis zum Ursprung in main zurückgenommen. Dann wird auf den neusten Commit im main Branch gesprungen und die zuvor zurückgenommen commits nacheinander eingespielt (rebase). Hierbei kann es zu Konflikten kommen insbesondere wenn neue usermods erstellt wurden. Die Konflikte können direkt in VS-Code gefixt und übernommen werden.
Sobald der Rebase abgeschlossen wurde, sollte das Projekt übersetzt und getestet werden. Sind weitere Korrekturen nötig, können diese über in einem weiteren Commit behoben werden.
Funktioniert der Usermod wie gewünscht, müssen die Änderungen noch in das SL Repository übernommen werden. Da ein rebase durchgeführt wurde, müssen die Änderungen über einen force push auf den Server gebracht werden. Hierzu öffnet man in VS-Code ein Terminal und führt git push –force aus.