NEWS
Adapter-Entwicklung: Wie lade ich neue Version hoch?
-
Hi,
geht um diesen Adapter, den ich gerade entwickle - Links: Forum, Github
Ist in Version 0.0.1, noch kein npm, usw.
Was muss ich alles machen, um den Adapter auf 0.0.2 zu heben? Ich habe ein paar Dateien angepasst.
Also,-
In welchen Dateien muss ich die Version auf 0.0.2 ändern. Reicht die
io-package.json
undREADME.md
? Oder in all diesen Dateien?
-
Wie bekomme ich danach alle Dateien sauber auf Github? Also welche Befehle sollte ich ausführen?
Das hier habe ich gesehen: https://github.com/ioBroker/ioBroker.template/tree/master/JavaScript#getting-started
Aber welche git-Befehle nun bei geänderten lokalen Dateien?
Meine Entwicklungsumgebung:
- ioBroker läuft auf Entwicklungsrechner unter Windows (also lokal, nicht remote)
- VS Code
Danke
Mod-Edit: Thema von "Allgemein" nach "Entwicklung" verschoben!
-
-
Hi,
@Mic sagte in Adapter-Entwicklung: Wie lade ich neue Version hoch?:
- In welchen Dateien muss ich die Version auf 0.0.2 ändern. Reicht die
io-package.json
undREADME.md
? - Wie bekomme ich danach alle Dateien sauber auf Github? Also welche Befehle sollte ich ausführen?
Ich gehe davon aus, das dein Adapterverzeichnis schon mit git init initialisiert wurde und mit github verbunden wurde.
Alle folgenden Befehle werden im Adapterverzeichnis ausgeführt
Als erstes musst du deine Code-Änderungen lokal durchführen.
je nachdem wieviele Änderungen du machst, macht es sinn einzelne zusammengehörende Änderungen in mehreren Dateien in einem commit zusammzufassen.
dazu fügst du mit dem folgende Befehl alle geänderten Dateien einer "staging area" hinzu.git add .
oder ein oder mehrere Dateien mit oder ohne wildcard hinzu
git add <pfad/dateiname>
mit dem folgenden befehl kannst du immer nach dem aktuellen status schauen, also was ist noch offen, was ist gestaged
git status
dann kannst du den commit anstossen mit
git commit -m "ein änderungstext, was du hier alles gemacht hast"
wenn du alle Änderungen lokal durchgeführt hast, dann willst du ein release für iobroker machen.
dazu passt du die folgenden dateien an- iobroker-package.json -> hier die aktuelle version eintragen und die Änderungshistorie ergänzen (max 20 Einträge) zurück
- package.json -> hier nur die aktuelle version eintragen
- readme -> hier deine doku ergänzen und im changelog deine aktuellen Änderungen eintragen
danach testen mit
npm test
hier werden 3 Tests durchgeführt package, unit und integration.
integration geht nur mit gestopptem iobroker.
Alternativ kannst du dein projekt in github noch mit travis und appveyor verbinden.
Die führen dann die tests aus, sobald die Änderung in github angekommen sindWenn das alles erfolgreich war, dann kannst du alles nach github schicken mit
git push
- In welchen Dateien muss ich die Version auf 0.0.2 ändern. Reicht die
-
Hi @OliverIO
Wow, vielen Dank für diese mega gute Erklärung!Hilft mir echt sehr.
Ich werde demnächst das Update durchführen und dann berichten -
@Mic welchen debugger verwendest du?
-
@OliverIO
Ich verwende VS Code. Hier hab ich mein Setup hier vor ein paar Tagen beschrieben:
https://github.com/Mic-M/iobroker.Adapter-Entwicklung-fuer-Anfaenger/wiki/Testumgebung-und-Entwicklungsumgebung-einrichtenKlappt so weit super komfortabel, gerade VS Code als Entwicklungsumgebung bin ich sehr begeistert, gerade wenn man von JS-Adapter Script-Entwicklung kommt.
Was nimmst du denn als Entwicklungsumgebung und zum debuggen?
-
@Mic
ich nehm notepadd++ als editor
und chrome browser als debugger (für adapter und widget code) -
@OliverIO
Cool auch da sehr simplifiziert. NotePad++ ist bei mir auch fester Standard, aber bin jetzt zu VS Code geschwenkt, aber nehme NP++ parallel falls zusätzlich/parallel benötigt.
Chrome als Debugger für Adapter hatte ich mir angesehen, aber da fand ich dann VS Code deutlich komfortabler.
Aber ist am Ende des Tages ist eh alles "Geschmackssache" -
@OliverIO
Denkst du, da fehlt noch ein Befehl?
Habe so wie oben durchgeführt, und dann auch:PS C:\iobroker\node_modules\ioBroker.windows-control> git commit -m "updated to version 0.0.2" [master fd6a650] updated to version 0.0.2 5 files changed, 101 insertions(+), 42 deletions(-) PS C:\iobroker\node_modules\ioBroker.windows-control>
Lief in ca. 1 Sekunde durch, also hat noch kein Upload zu Github stattgefunden? Auf https://github.com/Mic-M/ioBroker.windows-control sind die Dateien auch noch alt...
Update
Noch
git push
durchgeführt:PS C:\iobroker\node_modules\ioBroker.windows-control> git push fatal: The current branch master has no upstream branch. To push the current branch and set the remote as upstream, use git push --set-upstream origin master
Damit geht es nun
git push --set-upstream origin master
Alles gut.
-
na wenn fatal dran steht ist nicht alles gut
Hast du den Text gelesen?
Hast du den Punkt 3 https://github.com/ioBroker/ioBroker.template/tree/master/JavaScript#getting-started
gemacht? du darfst natürlich nicht das template projekt verknüpfen sondern musst deines nehmen
Dann musst wahrscheinlich noch nach login und passwort suchen, welches du deinem git auch noch beibringen musst.Da ich das mit linux mache, habe ich meinen public key bei github hinterlegt
Nachtrag, ach der 2.Befehl ging. ok beim nächsten mal reicht dann nur noch git push
Wenn bei dir dann soetwas nach git push dran stand, dann ist alles gut
Objekte aufzählen: 26, Fertig. Zähle Objekte: 100% (26/26), Fertig. Delta-Kompression verwendet bis zu 4 Threads. Komprimiere Objekte: 100% (14/14), Fertig. Schreibe Objekte: 100% (14/14), 10.91 KiB | 5.46 MiB/s, Fertig. Gesamt 14 (Delta 8), Wiederverwendet 0 (Delta 0) remote: Resolving deltas: 100% (8/8), completed with 8 local objects. To github.com:oweitman/iobroker.rssfeed.git 137b7ec..d5cd5b0 master -> master
-
Danke @OliverIO
Punkt 3 hatte ich gemacht. git ist für mich noch ein Buch mit sieben SiegelnIch hatte einen Fehler in Adapter-Version 0.0.2 (ein einziges Komma zuviel im JSON, node.js akzeptiert dadurch das JSON nicht, sic!).
Obige Befehle funktionierten nicht, immer Meldung "Everything up-to-date".Dann diese coole Seite hier er-googeld: https://rogerdudler.github.io/git-guide/index.de.html
Durchgeführt:
PS C:\iobroker\node_modules\ioBroker.windows-control> git push origin master Everything up-to-date PS C:\iobroker\node_modules\ioBroker.windows-control> git add . PS C:\iobroker\node_modules\ioBroker.windows-control> git commit -m "update to 0.0.3" [master 9588531] update to 0.0.3 3 files changed, 9 insertions(+), 3 deletions(-) PS C:\iobroker\node_modules\ioBroker.windows-control> git push origin master Enumerating objects: 9, done. Counting objects: 100% (9/9), done. Delta compression using up to 4 threads. Compressing objects: 100% (5/5), done. Writing objects: 100% (5/5), 700 bytes | 700.00 KiB/s, done. Total 5 (delta 4), reused 0 (delta 0) remote: Resolving deltas: 100% (4/4), completed with 4 local objects. To https://github.com/Mic-M/ioBroker.windows-control fd6a650..9588531 master -> master PS C:\iobroker\node_modules\ioBroker.windows-control>
Damit ging es jetzt.