GitHub Repo als Backup

  • Mal wieder ein Usecase das umsetzung bedarf.

    Da ich ich mittlerweile fasst alles in Docker habe und viel configurationsaufwand dahinter steckt will ich die Container files (configs) in github oder dergleichen sauber sichern und meine changes tracken.

    Wie mach ich das denn ? Bin nen github noob. ?(

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • Ich habe zwar keine Lösung aber ich bewundere Dein Problem :)

    Nein, im Ernst, ich habe mir das für diverse meiner Konfigurationen (FHEM, mosquitto, Node-Red, Pi-Hole, etc.) auch schon mal überlegt aber bisher noch nicht angegangen.

    Bin aber gerne dabei, um hier eine praktikable und saubere Lösung zu finden.

  • Hehe - ja Also es gibt ja diese GitHubDesktop App. Das wäre für einmalige Dinge vl. cool aber eigentlich sollt es ja bessere Möglichkeiten geben das zu pushen.

    Vorallem stell ich mir halt eine Wiederherstellung gut vor. zB deploy ich kurz nen frischen docker. sag dann irgendwo

    Code
    git pull config XY

    und schon ist alles wieder am start

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • Als Github Profi würde ich mich nicht bezeichnen, aber wenn ich was dort mache dann habe ich es nach dieser anleitung
    gemacht : https://legacy.thomas-leister.de/github-fuer-an…code-hochladen/

    In deinem Fall müsstest du quasie in jedem config ordner git init ausführen und dann hochladen.

    Ich denke das die angelegten git Dateien im config Ordner nicht stören.
    Persönlich würde ich dann noch eine txt anlegen, wo du weitere infos der config hinterlegst. z.B.: wo befindet sich das Data verzeichnis etc.


    Ich finde die Idee echt spannend. Soweit hatte ich bei den configs noch gar nicht gedacht.

    Mein System:

    Spoiler anzeigen


    Server

    Wohnzimmer

    im Haus verteilt


    Cooler Master Elite 110
    ASRock J3455-ITX
    16GB DDR3L-1333
    3x WD green 3TB
    1x 60GB BOOT-SSD
    OMV 6.x
    TVHeadend 4.3.xx

    Phillips PUS8546
    Kodi 21 Beta (maven)

    diverse
    Raspberry Pi
    LibreElec 9.x


  • Also ich habe mir mittlerweile angewöhnt alle meine Projekte und Konfigurationen in Git-Repositories zu überführen. Es ist auf jeden Fall eine sehr gute Sache! Mittlerweile konnte ich Erfahrungen mit Gitorious, Phabricator, GitLab, GitHub und Bitbucket sammeln. Meine persönlichen Sachen sind im Moment auf GitHub und Bitbucket verteilt. Seitdem GitHub private Repositories kostenlos anbietet, habe ich angefangen die Sachen dorthin zu mirgieren.

    Als GUI bin ich bei SourceTree hängen geblieben (da Windows + macOS). Ich bin damit sehr zufrieden, nutze allerdings auch öfter mal direkt das Terminal. Falls hier Fragen sind, gerne anhauen. Kenne mich auch mit git-flow aus.

  • Mähhhh bei der installation muss ich nen bitbucket account machen und kann nur die wählen - ist also direkt raus (geht wohl irgendwie mit ner alten version... aber auf sowas hab ich kein Boock :D)

    Versuch mich jetzt mal einen Workflow zu realisieren mit GithubDesktop

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • Uiuiui, ich sollte mich doch mal mehr mit Git beschäftigen :

    Prinzipiell hatte ich mir das so gedacht:
    - Es gibt ein "Backup" Repo auf Github, welches verschiedene Unterordner hat (z. B. FHEM, Node-RED, etc.)
    - In den Unterordnern gibt es ggf. noch Unterordner (z. B. im Node-RED Order gibt es die Unterordner "Config" und "Flows") - Ich möchte gerne so gut es geht Produktivdaten von Systemdaten trennen
    - Auf meinen verschiedenen Systemen (z. B. auf dem Raspberry Pi, auf dem FHEM und Node-RED laufen) wird (zum Beispiel per Shellscript) (x-mal) wöchentlich die aktuelle Config für jedes Tool ins Repository gepusht
    - Zusätzlich wird (x-mal) wöchentlich der Datenstamm (soweit vorhanden) in den entsprechenden Unterordner gepusht

    So soll gewährleistet sein, dass ich - sowohl für die Konfigurationen, als auch die Produktivdaten der Tools - stets ein Fallback auf einen früheren funktionierenden Stand habe.

    Was ich mich nur gerade frage ist, wie viele Versionen (mit Veränderungen im Vergleich zur zuletzt hochgeladenen Version) auf Github in der Vergangenheit gespeichert werden und ob Github es merkt, wenn es keine Änderungen an den Dateien gab.

    Ist meine Idee prinzipiell mit Github möglich oder wären da andere Systeme (z. B. ein einfacher FTP mit gezippten und Datums-Numerierten Backup-Daten) angenehmer?

  • Was ich mich nur gerade frage ist, wie viele Versionen (mit Veränderungen im Vergleich zur zuletzt hochgeladenen Version) auf Github in der Vergangenheit gespeichert werden und ob Github es merkt, wenn es keine Änderungen an den Dateien gab.

    Glaube nicht, dass es da ein Limit gibt. Denke nur SHA1 'limitiert' dich :whistling: (Jeder commit wird duch einen SHA1 Hash identifiziert - Stichwort Hash-Collision)
    Und ja, wenn es keine Änderungen gibt, kannst du auch nichts commiten -> ohne commit auch keinen push zu remote


    Ist meine Idee prinzipiell mit Github möglich oder wären da andere Systeme (z. B. ein einfacher FTP mit gezippten und Datums-Numerierten Backup-Daten) angenehmer?


    Ja, ist möglich.
    Ich würde dann allerdings empfehlen, sich wirklich tief mit git zu beschäftigen, sonst kann man viel in kurzer Zeit zerstören.

    Ergo: Wenn man keine Lust hat, git erst wirklich sehr gut kennenzulernen, dann eher ne andere Lösung suchen (imo)

  • @SLiX: Ich habe kein Problem damit, mich in Neues einzuarbeiten :)

    Git hätte halt den Charme, dass man auch auf frühere Versionen zugreifen kann. Den verliere ich zwar nicht, wenn ich eine FTP Lösung fahre, in der Dateien mit Zeitstempel im Dateinamen abgespeichert werden - aber einfach mal so einen Vergleich fahren von Stand X zu Stand Y ist halt mit Git doch ne feine Sache.

    Oder eben - wenn ich mal ein System oder Tool neu aufsetzen muss - zu sagen: Zieh Dir einfach die letzte Version von Deiner Config und Deinen Daten aus Git und fertig ist die Sache. Bei einer FTP Lösung müsste man da erst die letzte Version suchen, runterladen, umbenennen oder entpacken, etc. ...

  • Für Git Anfänger empfehle ich als GUI GitKraken. Nutze ich selbe mit mehreren Leuten und ist meiner Meinung nach das verständlichste und übersichtlichste. Die Free Version reicht für 99,9% aller Fälle aus.

    https://www.gitkraken.com/

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

  • Natürlich kann man es auch selbst hosten. Aber wenn man git möchte sollte man das auch nehmen und nicht svn. :D

    im Eingangspost steht aber auch:

    Zitat

    ...github oder dergleichen...

    Deshalb, da alle hier direkt auf git gesprungen sind, die Alternative :-))


    Wir nutzen z.b. auf Arbeit svn... und es läuft prima... das „lokale“ repo war niemals nie nie erreichbar, außer Netzwerk war tot (jemand hat den Switch ausgeschaltet ^^)... dann ist git aber genauso wenig erreichbar... :D
    Weshalb die Frage auftaucht, weshalb sonst sollte mal das „lokale“ repo nicht erreichbar sein? Und wenn, ich glaube dann hat man noch andre Probleme ;)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!