PlatformIO Infosammlung: Unterschied zwischen den Versionen
Tut (Diskussion | Beiträge) |
Tut (Diskussion | Beiträge) (→Temporäre Dateien nicht archivieren (.gitignore / seafile-ignore.txt)) |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 43: | Zeile 43: | ||
} | } | ||
+ | </pre> | ||
+ | |||
+ | == Temporäre Dateien nicht archivieren (.gitignore / seafile-ignore.txt) == | ||
+ | Bei jedem Kompilieren werden viele temporäre Dateien erzeugt, insbesondere werden die Bibliotheken komplett geladen. Das macht sich nicht gut, wenn man seine Projekte in GIT oder auch Cloudspeichern ablegen will - gerne kommen Cloudspeicher da durcheinander, wenn sehr viele Dateien beim Build-Prozess umgebaut werden. Das kann man mit entsprechenden Ingore-Dateien verhindern: | ||
+ | |||
+ | === Seafile === | ||
+ | Die seafile-ignore.txt Datei muss ins Hauptverzeichnis der Seafile-Bibliothek, wo irgendwo das PlatformIO-Projekt liegt. Der Inhalt bei mir: | ||
+ | <pre> | ||
+ | # put in Seafile library root folder, otherwise will not have effect | ||
+ | */.pio/ | ||
+ | */.git/ | ||
+ | </pre> | ||
+ | |||
+ | === GIT === | ||
+ | Die .gitignore Datei muss ins GIT-Projekt-Hauptverzeichnis. Ich nutze folgenden Inhalt: | ||
+ | <pre> | ||
+ | .pio | ||
+ | .vscode/.browse.c_cpp.db* | ||
+ | .vscode/c_cpp_properties.json | ||
+ | .vscode/launch.json | ||
+ | .vscode/ipch | ||
</pre> | </pre> |
Version vom 17. September 2024, 14:12 Uhr
Inhaltsverzeichnis
Private Credentials (z.B. Wifi-Passwort) ablegen
Damit private Credentials wie Passwörter oder API-KEYs nicht versehentlich mit einem Projekt mitveröffentlicht werden, bietet es sich an, diese in einer speziellen Stelle im Home/User-Verzeichnis abzulegen und nur per Include ins Projekt zu holen.
Im Home (Unix/Linux/MacOS) bzw. User (Windows) Verzeichnis gibt es einen versteckten .platformio Ordner.
Der Pfad unter Windows ist: C:\Users\<USERNAME>\.platformio.
Unter Mac/Linux/Unix ist der Pfad ~/.platformio/. Beim Mac-Finder muss ggf. Command + Shift + . gedrückt werden, damit die versteckten Ordner sichtbar werden.
Unter diesem .platformio Ordner nun folgende Ordnerstruktur mit der MyCreds.h-Datei erstellen:
.platformio/lib/MyCreds/MyCreds.h
Es können auch mehrere Dateien mit anderen Namen im MyCreds-Ordner liegen, z.B. eine MyCredsHackffm.h.
Diese Datei bekommt dann z.B. folgenden Inhalt:
#ifndef WIFI_SSID #define WIFI_SSID "MyWiFiSSID" #define WIFI_PASSWORD "MyWiFiPassword" #endif
Im PlatformIO-Projekt kann man dann einfach auf diese Credentials zugreifen:
#include <WiFi.h> #include <MyCreds.h> ... void setup() { ... WiFi.mode(WIFI_STA); WiFi.begin(WIFI_SSID, WIFI_PASSWORD); while (WiFi.status() != WL_CONNECTED) { Serial.print('.'); delay(500); } Serial.print("IP address: "); Serial.println(WiFi.localIP()); ... }
Temporäre Dateien nicht archivieren (.gitignore / seafile-ignore.txt)
Bei jedem Kompilieren werden viele temporäre Dateien erzeugt, insbesondere werden die Bibliotheken komplett geladen. Das macht sich nicht gut, wenn man seine Projekte in GIT oder auch Cloudspeichern ablegen will - gerne kommen Cloudspeicher da durcheinander, wenn sehr viele Dateien beim Build-Prozess umgebaut werden. Das kann man mit entsprechenden Ingore-Dateien verhindern:
Seafile
Die seafile-ignore.txt Datei muss ins Hauptverzeichnis der Seafile-Bibliothek, wo irgendwo das PlatformIO-Projekt liegt. Der Inhalt bei mir:
# put in Seafile library root folder, otherwise will not have effect */.pio/ */.git/
GIT
Die .gitignore Datei muss ins GIT-Projekt-Hauptverzeichnis. Ich nutze folgenden Inhalt:
.pio .vscode/.browse.c_cpp.db* .vscode/c_cpp_properties.json .vscode/launch.json .vscode/ipch