Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update der Repositorie #52

Closed
nischram opened this issue Mar 29, 2021 · 13 comments
Closed

Update der Repositorie #52

nischram opened this issue Mar 29, 2021 · 13 comments

Comments

@nischram
Copy link
Owner

Hey,

hier ein Issue für mich selber...
Das Updaten meiner Anwendung ist nicht mit den git Boardmitteln möglich, wegen der "parameter.h".
z.B. ein git pull überschreibt die eigenen Parameter in der Datei.

Ich muss ich mir mal was einfallen lassen, damit ein Update einfach möglich wird.

VG Nico

@nischram
Copy link
Owner Author

Aktuell kann man dies ggf. mit einem Trick hinbekommen.

in Verzeichnis wechseln:

cd E3dcGui

die "parameter.h" und "parameterHM.h" kopieren:

cp parameter* ../

die Repositorie updaten mit:

git pull

die "parameter.h" zurück kopieren (verschieben):

mv ../parameter* ../E3dcGui/

nun muss das neue Update kompiliert werden:

make

Dies funktioniert aber nur wenn ich keine Erweiterung an der "parameter.h" vornehme.

VG Nico

@GSHusar
Copy link

GSHusar commented Mar 30, 2021

Hi Nico,
Dein issue kam wie gerufen - genau das fehlte mir heute morgen, beim Update auf die 1.87.

"Dies funktioniert aber nur wenn ich keine Erweiterung an der "parameter.h" vornehme."

Geht das für 1.86 -> 1.87 ?

Gruß
Gerhard

@nischram
Copy link
Owner Author

Hallo Gerhard,
Ja genau richtig!
Die letzten Änderungen an der „parameter.h“ gab es in der 1.85
Somit sollte das klappen.
Viel Erfolg
Gruß Nico

@dg0ovp
Copy link

dg0ovp commented Apr 18, 2021

Hallo Nico,
da mein Raspberry mit der E3DCgui noch auf Version 1.83 (mit Änderungen wegen Fehler) läuft, wollte ich heute das beschriebene Update starten. Doch jedoch nach einem git pull ercheint folgender Fehler:
grafik

Was nun? Ich habe mich durch die Hilfe der Befehle --commit und --stash gearbeitet aber als ich eine E-Mail Adresse angeben soll um anzugeben wer diese Änderungen durchgeführt hat, habe ich abgebrochen.
PS: Ich habe eine Wallbox mit TCP/IP Anbindung und auch das passende Auto dazu. Ich kan deine Änderungen der V1.87 testen wenn noch Bedarf besteht.
Gruß Thomas

@nischram
Copy link
Owner Author

Hallo Thomas,

ich kenne mich mit git leider auch nicht so gut aus. Wenn die die Dateien die du für dich verändert hast wie oben beschrieben gesichert hast dann könntest du alle Dateien die und der Fehlermeldung auftuschen einfach löschen, bevor du git pull verwendest. Löschen geht hiermit:

rm External/WetterGui.h 
rm External/weather/get_weather_data.h 
rm Frame/DrawImage.h 
rm GuiMain.c 
rm parameter.h 
git pull

oder du löscht das ganze Verzeichnis mit:

cd
rm -r E3dcGui

musst aber ggf, Schreibgeschützte Dateien mit "j" bestätigen.
Danach kannst du die Applikation ganz neu clonen mit:

git clone git://github.com/nischram/E3dcGui.git ~/E3dcGui

Jeweils um deine Änderungen zurückzuspielen musst du ins Verzeichnis wechseln, den Kopiervorgang starten und kompilieren:

cd E3dcGui
mv ../parameter* ../E3dcGui/
make

Elegant ist die Lösung nicht aber wie man es mit der Aktuellen Version meiner Software besser lösen kann weiß ich nicht.
Ich hoffe es klappt bei dir?!

Ob es mit der Wallbox klappt weiß ich nicht aber vielleicht kann ich mit deinem Feedback da noch was hinbekommen.

VG Nico

@dg0ovp
Copy link

dg0ovp commented Apr 20, 2021

Hallo Nico,
das Update war erfolgreich. Jedoch musste ich den kompletten Ordner löschen. Denn nach dem löschen der angezeigten Dateien war die Meldung noch die gleiche, mit den gleichen Dateien.
Vor dem Backup hatte ich den kompletten E3DC Ordner per WinSCP kopiert, was gut war denn die Datei Entsorgung_2021.txt fehlte noch. Die nächsten Tage werde ich dann die Wallbox Funktionen testen. Das Display zeigt aber jetzt schon mal genau die Einstellungen an die ich am Hauskraftwerk eingestellt habe.
Gruß Thomas

@nischram
Copy link
Owner Author

nischram commented May 3, 2021

Noch bin ich nicht weiter mit diesem Issue.
In der aktuellen Version V1.89 habe ich Änderungen an der parameter.h vorgenommen, so reicht der oben beschriebene Vorgang nicht aus, die neuen Parameter müssen nachgetragen werden.

nischram added a commit that referenced this issue Jun 7, 2021
- Issue #52 parameter.h im .gitignore aktiviert und parameter.h.temp eingebunden
- Schriftgröße fest auf 8x16 umgestellt
- Bei der Anzeige für Strom wurde die erste 0 nach dem Komma nicht angezeigt
- In der Ansicht Aktor / DHT die Schrift für Größe 8x16 angepasst
- Nur Programme die laufen werden beim ./stop beendet
- Changelog archiviert
@nischram
Copy link
Owner Author

nischram commented Jun 7, 2021

Hallo zusammen,

ich habe nach langem hin und her eine Lösung gefunden, die für mich und auch für euch User wohl die einfachste ist.
Es gab wichtige Punkte für mich:

  • die Parameter im Quellcode nicht alle ändern, damit User die mein Programm umgeschrieben haben kein großen aufwand treiben müssen.
  • ein git pull muss ohne Fehlermeldung wegen Änderungen durchlaufen.
  • wenn neue Parameter von mir erstellt wurden müssen diese Automatisch funktionieren ohne das der Kompilieren fehl schlägt.
  • Die Parameter müssen irgendwo erscheinen
  • die erste Installation der Software muss einfach bleiben
  • das Update vor dieser Verbesserung muss einfach möglich sein

So habe ich jetzt folgendes gemacht:

  • die "parameter.h" im ".gitignore" aufgenommen
  • damit ein Beispiel zur Verfügung steht, habe ich eine "Parameter.h.temp" hinzugefügt
  • damit die Erstinstallation gelingt habe ich das Programm "copyPara" erstellt, welches ggf. die "parameter.h" aus der "parameter.h.temp" kopiert
  • beim Start mit ./start wird nun eine neue Variable die nach einem Update fehlt, angezeigt und entsprechend ein default Wert gesetzt.

Das Update von allen alten Versionen auf die Version V2.00 sollte eigentlich schon Problemlos durchlaufen, da die "parameter.h" jetzt im ".gitignore" aufgenommen ist. Wenn die Version älter als die V1.92 gewesen ist, müssen die fehlenden Variablen aus der "parameter.h.temp" gesucht und kopiert werden. hierfür habe ich nichts einbauen können.diese

Das Update sollte jetzt mit diesem Befehl klappen:

git pull

Damit diese Information einige Zeit sichtbar bleibt lasse ich den Issue noch einige Zeit offen obwohl das Problem gelöst ist.
Sollte es Probleme beim Update, bitte hier den Fehler melden.

VG Nico

nischram added a commit that referenced this issue Jun 7, 2021
@dg0ovp
Copy link

dg0ovp commented Jun 29, 2021

Hallo Nico,
ich habe mal dein Update getestet. Bin jedoch auf eine Fehlermeldung gestoßen. Ich habe "noch" die Version 1.88, ein git pull brachte die Meldung wie im Screenshot zu sehen.
#52 git pull Message_01
Das hatte ich ja schon mal. Gibt es dazu noch eine Möglichkeit? Beim letzten mal hatte ich den ganzen E3DC Ordner gelöscht, die Software ganz neu installiert und dann meine Dateien mit Einstellungen (Parameter, Müllkalender,etc.) wieder zurück kopiert.
Gruß Thomas

@nischram
Copy link
Owner Author

Hallo Thomas,
so wirklich verstehe ich das nicht, denn ich habe die "parameter.h" nicht mehr als Datei hinterlegt und im gitignor aufgenommen, so sollte eigentlich jede Änderung an der Datei egal sein. Du hattest doch schon mal Probleme mit den rechten vielleicht wir dadurch die Funktion gestört gib im "E3dcGui" Ordner doch mal ls -lisa ein und vergleiche die Rechter der "parameter.h" mit den von meiner,
264584 20 -rw-r--r-- 1 pi pi 20194 Jun 18 20:05 parameter.h
Wenn die Rechte Ok sind musst du eventuell noch einmal die Datei vorm Update umbenennen und nachher wieder zurück.
Umbenennen: (z.B.)
mv parameter.h parameterThomas.h
zurück nach dem Update:
mv parameterThomas.h parameter.h
Danach dann kompilieren.

Ansonsten eventuell ohne umbenennen, habe ich diesen Beitrag gefunden: https://www.andrerinas.de/tutorials/git-pull-erzwingen-force-lokale-dateien-zu-ueberschreiben.html

Viel Erfolg! Gruß Nico

@dg0ovp
Copy link

dg0ovp commented Jul 1, 2021

Hallo Nico,
die Berechtigungen sind identsich (-rw-r--r--).
Das mit dem umbenennen habe ich probiert, er hat dann auch Dateien heruntergeladen ohne diese Fehlermeldung. Allerdings kommt dann beim kompilieren Fehlermeldungen rund um den Bereich RscpMain. Das muss ich jetzt erst noch verstehen, es sieht mir ao aus als ob Homematic Parameter fehlen. Ich zwar eine Homematic CCU aber noch nicht mit dem E3DC verknüpft und dementsprechend den Wert in der parameter.h auf 0 stehen. Das als kleines Update, ich werde jetzt erst mal weiter testen.
Gruß Thomas

@nischram
Copy link
Owner Author

Hallo Thomas,
im Homematic-Forum kam eine ähnliche Anfrage, dass bei RscpMain.cpp das Kompilieren scheitert. Ich habe mit der Info aus dem Forum in der Reihenfolge in der RscpMain einen Fehler gefunden. Mit V2.02 sollte auch dein Problem behoben sein wenn du es nicht schon selber in den griff bekommen hast.

VG Nico

@nischram
Copy link
Owner Author

Ein Update scheint jetzt mit "git pull" zu klappen. Die Anleitung ist soweit angepasst und alle anderen Themen aus diesem Issue sind behandelt, somit schließe ich diese Issue.

VG Nico

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants