GIT Backup mit Raspberry Pi

Sn0bli

Cadet 2nd Year
Registriert
Feb. 2017
Beiträge
18
Hallo zusammen,
wir starten ein kleines Projekt, bei dem etwa 8 bis 10 Leute dabei sind und verwenden dafür ein selbstgehostetes GIT. Leider hab ich wenig Erfahrung damit, hab mir jetzt zum testen ein Gitlab aufgesetzt.

So wie ich das Prinzip von GIT verstanden habe, reicht es als Backup ja, wenn ich auf einem Raspberry Pi täglich einmal alle Branches Pull. Bei "Notfällen" push ich wieder hoch und hab alle meine Commits wieder online. Hab ich da was übersehen?

Danke und LG
 
Sn0bli schrieb:
So wie ich das Prinzip von GIT verstanden habe, reicht es als Backup ja, wenn ich auf einem Raspberry Pi täglich einmal alle Branches Pull. Bei "Notfällen" push ich wieder hoch und hab alle meine Commits wieder online.

Ja aber Issues in GitLab und alles was nichts mit Git zutun hat muss man noch zusätzlich backuppen.
 
Jeder der Projektteilnehmer hat doch eine lokale Kopie des Repositories, der Raspberry wäre ein zusätzlicher client.

Im Zweifel haben nicht alle Teilnehmer die neueste Version des Repos, aber mindestens der Teilnehmer der den letzten commit gepushed hat, hat vorher einen "pull" gemacht und damit ein Backup des Zentralen Gitlab Repos.

Was nicht gesichert wäre sind die zusätzliche Gitlab Funktionalitäten wie issues oder grundsätzliche extra Geschichten wie "Git lfs".
 
Ja klar, werden wahrscheinlich eh nicht bei Gitlab bleiben.
Vielen Dank! :)

@menace_one
Ja das stimmt.. Ich bin da nur immer gern übervorsichtig.
Und es hat ja nicht jeder jeden Branch gezogen
 
Zuletzt bearbeitet:
git "pull" ist doch die Kombination aus git "fetch" und git "megre". Bei "fetch" werden doch per default alle remote branches gezogen, nur nicht ausgecheckt.
 
Ah okay, wusste nicht, dass alles geladen wird.
 
Ich empfehle da initial einmalig
Code:
git clone --mirror <url>
und dann im gewünschten Intervall
Code:
git remote update

Das schützt allerdings nicht davor, dass man Datenverlust hat, wenn jemand mit push --force hantiert (kann man in GitLab unterbinden).

Alternative wäre im gewünschten Intervall
Code:
git clone --mirror <url> mein_repo_$(date +"%d_%m_%Y")
und dann eben einen zweiten cronjob, der ab und zu die ganz alten Sachen wegräumt, je nach Plattenplatz.
 
Wow vielen Dank!
Das heißt, dass ich jedes mal, wenn ich das clone --mirror ausführe, alle Commits nochmal speichere oder? Also jedes mal den ganzen Baum.
 
Ja, das ist die allumfassende Variante. Wenn du aber keine Binärdateien versionierst, ist das von der Datenmenge her trotzdem sehr überschaubar.
 
Dann werd ich das so machen.
Vielen Dank für deine bzw. eure Hilfe!
 
Spricht denn was dagegen, das Projekt einfach als privates Projekt bei GitHub/GitLab zu hosten?
 
Zuletzt bearbeitet:
Ich weiß nicht sicher, wie viele Personen schlussendlich daran arbeiten. Da bei den meisten Anbietern nur bis zu einer bestimmtem Anzahl von Leuten kostenlose Repos möglich sind und ein vServer sowieso vorhanden ist, haben wir uns dazu entschlossen, selbst zu hosten.

@r15ch13
Das werd ich mir nächstes WE ansehen, danke!
 
Zuletzt bearbeitet:
https://about.gitlab.com/pricing/#saas

Free: Unlimited private projects and collaborators
Nur zur Info.

Falls du wirklich selbst hosten willst, ich hab GitLab bei mir als Docker Container laufen, dann muss ich nur die gemounteten Data/Config Ordner backuppen und fertig. Kann ich wärmstens empfehlen.
 
Stimmt, das hab ich übersehen.

Da sich GitLab beim Testen bisher gut geschlagen hat, werden wir wahrscheinlich dabei bleiben.

Obs nun selbstgehostet oder bei GitLab ist weiß ich noch nicht.
 
Zurück
Oben