NEWS
Vorgehensweise bei der Adapterentwicklung
-
Hallo, mal eine allgemeine Frage zur Entwicklung - wie geht man am besten vor?
Ich habe meinen Adapter lokal entwickelt und immer auf github aktualisiert. Als ich für die Version 0.0.1 fertig war, habe ich die Version auf npm verschoben und hier im Forum zu Test angeboten.
Jetzt habe ich an dem Adapter weiterentwickeln und einige neue Funktionen eingebaut, den Code aufgeräumt und den Code dokumentiert - dies aber alles lokal. Wenn ich es jetzt auf github aktualisiere, wird ja gleich der neue Code heruntergeladen, wenn man den Adapter von github installiert (github-Adresse ist ja im Beitrag zum Test hinterlegt).
Jetzt habe ich die Version 0.0.2 zum testen fertig, momentan allerdings nur lokal auf meinem Rechner.- Wie gehe ich jetzt am besten vor?
- Entwickelt Ihr Eure Adapter im gleichen Verzeichnis weiter?
Ich die Programmierung von JS bin ich jetzt gut reingekommen, mir fehlt jetzt aber noch das Drumherum...
-
@Baumert Das klingt doch vom Vorgehen ganz vernünftig.
Ich denke für die meisten Nutzer ist die offizielle stable Version wichtig, diese sollte gut getestet sein.
Neugierige Nutzer nehmen gerne jedoch die latest Version von npm, da es bei einigen Adaptern sehr lange dauert bis etwas als stable veröffentlicht wird.
Die Version in git sollte für die Weiterentwicklung und für erste Tests sein. Ich denke du kannst deine Anpassungen daher auch regelmäßig nach git pushen.Bin gespannt wie andere hier vorgehen...
-
Ich würde oft nach github pushen. Wer von github installiert der weiß da er eine Entwicklingsversion bekommt. Wenn es halbwegs getestet ist dann via npm publish und pull request in den latest Bringen wo es dann mehr Leute testen können.
-
@tombox ich mache es bei meinen Adapter so:
Github:
- master Branch (aktuelle Version)
- develop Branch (meine Weiterentwicklung, also regelmäßiges pushen)
Wenn der develop Branch "fertig" für eine neue Version ist, dann merge ich ihn in den master Branch.
NPM:
- aktuelle Version
Wenn du auf Github mit Release arbeitest, dann könnten die User theoretisch auch den aktuellen Release herunterladen, allerdings verwenden die meisten die master Branch.
-
@J-A-R-V-I-S Das mit den zwei Branches "master" und "develop" gefällt mir gut und ich würde gerne auch so anwenden.
Bevor ich jetzt aber irgendetwas falsch mache - wie gehe ich hier jetzt am besten mit der git Kommandozeile vor?- Branch anlegen mit 'git branch develop'
- Branch wechseln mit 'git checkout develop' <- Arbeitsverzeichnis wird synchronisiert, hier ist aber aktuell meine neue Version drin, die lokal weiterentwickelt habe
- entwickeln, pushen, entwickeln, pushen, entwickeln, pushen, Version fertig
- Branch mergen mit 'git merge master'
klappt dies so - auch hier bin ich neu unterwegs...
-
@Baumert zunächst solltest du alles, was noch nicht im master ist, dort hin push (bin mir nicht sicher, ob nicht ansonsten etwas verloren geht).
Danach den develop (oder wie auch immer der heisst) Branch erstellen (habe ich bisher direkt im Github gemacht, kenne den genauen Befehl dafür gerade nicht).
Und dann mit
git checkout develop
den Branch wechseln. Villeicht ist vorher auch noch eingit pull
notwendig, damit du auch alle Änderungen zu dem neuen Branch erhälst, bzw. dein lokales Repos überhaupt weiß, dass es einen neuen Branch gibt.Im neuen Branch weiterentwickeln.
Mergen habe ich bis jetzt auch direkt im Github gemacht.
Und dan einfach im develop Branch weiterentwickeln bis zur nächsten Version.
Wenn du das komplett über die Komandozeile machen möchtest, dann müsstes du dir einmal die richtigen Befehle dafür raussuchen.
-
@J-A-R-V-I-S ich werde es heute Abend mal mit einem Testrepo versuchen.
-
Ich nutze noch zusätzlich den Desktop, da ich mir nie die Konsolenbefehle alle merken kann
-
So, habe jetzt auf die Arbeitsweise mit 2 Branch umgestellt. Funktioniert super - vielen Dank für die Idee...