Code Verwaltung über mehrere PCs (Github)

Kurze Frage: Ich würde gern an mehreren PCs an meinem Code arbeiten und würde gern wissen wie das am besten zu bewerkstelligen ist.
Klar ist dafür ja Git da, aber dabei hab ich folgende Frage. Ich habe bisher meinen Fork von @biologist s Repo ins VS-Code geladen (pull). Jetzt habe ich meine Anpassungen für meine Hardware gemacht, vor allem in der settings-override.h. Diese wird ja schon mal nicht übers git syncronisiert und das ist ja auch nicht so gedacht. Jetzt könnte ich diese eine Datei manuell via Cloud oder Netzlaufwerk syncronisieren, aber das muss man dann konsequent machen. Schwieriger ist es mit Änderungen an anderen Dateien, die ich nicht commiten (veröffentlichen) möchte (wie z.B. das Passwort in der RfidPn5180.cpp). Wie bekomme ich diese Dateien zwischen mehreren PCs syncronisiert wenn ich auch gleichzeitig „updates“ aus dem origonalen Repo bekommen möchte? Ich hab schon geschaut, aber ich kann die Sichtbarkeit meines Github-Repos „aus Sicherheitsgründen“ nicht auf privat/nicht öffentlich ändern.
Auschecken auf eine Clouddrive hab ich probiert, geht, aber ist ganz schön zäh, weil bei einem build so ca 6000 Dateien aktualisiert werden :see_no_evil_monkey:
Wie macht ihr das? Wie managed ihr eure Settings?

Es ist ja dein eigenes Repository. Insofern kannst du ja dafür sorgen, dass sie übertragen wird. Du musst sie dafür lediglich in der .gitignore austragen und dann wird sie mitsynchronisiert.

Also zur Sichtbarkeit auf Github kann ich mangels Erfahrung nix sagen. Aber würde ich das nicht öffentlich machen wollen, dann würde ich das Repository lokal auf einen Raspberry Pi legen. Dafür braucht es gar nicht viel; im Prinzip nur einen SSH-Zugang. Das ganze Webfrontend, welches GH bietet, muss man ja nicht laufen haben, nur um sein Repository zentral zu haben.

das sollte aber gehen: Private Repositories auf GitHub nun kostenlos | heise online

Sonst kannst auch einfach wie im Artikel auch erwähnt, gitlab nutzen, die bieten das auch…

Vielen Dank für die schnellen Antworten. Der Punkt ist ja ich würde gern die Verbindung zum master repo von @biologist erhalten um weiterhin ggf. Erweiterungen o.Ä. via pull zu bekommen. Dafür muss ich doch im Github Netzwerk bleiben oder?

Nee, musst du nicht. Das Tool, was wir hier benutzen, ist git. Und git ist es egal, ob das jetzt bei github liegt oder lokal auf einem Raspi, NAS oder wo auch immer. Du checkst das aus meinem Repository aus (hast du ja schon) und fügst einen weiteren remote hin, der beispielsweise bei dir lokal liegt:

Dann kannst du weiterhin aus meinem Repository pullen, jedoch auch lokal bei dir in dein lokales Repo comitten.

Zum Verständnis:
Github ist letztlich halt eine Social Media-Plattform, auf der man git-Repositories verwalten und öffentlich (oder auch nicht) bereitstellen kann. git selbst braucht kein github. Früher mit svn war das alles immer umständlich, weil man dann auch einen Serverdienst betreiben musste. Jetzt kannst du in einem beliebigen Verzeichnis einfach git init machen und dann lebt das Repository dort lokal. Dann kann man remotes einfach hinzufügen und für diese remotes ist die Eintrittshürde halt echt niedrig.

2 „Gefällt mir“

Super, vielen Dank mal wieder auch an dieser Stelle :+1: dann wird git wohl die nächste Lernkurve, die ich mal in Angriff nehmen werde. Ich bin immer wieder beeindruckt wie komplex (für mich) schon so ein noch relativ kleines Projekt ist und noch mehr, dass am Ende, nachdem man auf build gedrückt hat und zig tausend Sachen durchgerattert sind, eine grandiose Firmware rauskommt :smiling_face_with_three_hearts: Danke an alle Beteiligten :+1:

1 „Gefällt mir“