Piehnat

Ein Blog. Wie früher. Nur heute.

Eigenes Git-Repository auf einem Raspberry Pi hosten

Während GitHub eine großartige Möglichkeit bietet, Projekte zu teilen und mit anderen zusammenzuarbeiten, gibt es oft Situationen, in denen man beispielsweise seinen Code oder Konfigurationsdateien unter Versionskontrolle haben möchte, ohne sie mit Dritten zu teilen.

Man könnte einen GitLab-Service zu Hause einrichten, um die volle Kontrolle über das zentrale Repository zu behalten.

Ich persönlich bevorzuge es, meine privaten Konfigurationsdateien und Skripte auf meinem Raspberry Pi zu speichern. So kann ich meine Einstellungen, Aliase und Skripte zwischen meinem Desktop, Laptop und Geräten synchronisieren. GitHub erlaubt zwar private Repositories, aber warum sollte ich Details über meine Systeme, Benutzer und Netzwerke mit einem Drittanbieter teilen?

Grundlegende Übersicht

Voraussetzungen

Einrichtung eines privaten Git-Repositories

Das Einrichten eines privaten Git-Repositories ist überraschend einfach:

  1. Melden dich auf deinem Raspberry Pi an.
  2. Installiere das Git-Paket:
    sudo apt update && sudo apt install git -y
  3. Erstelle einen dedizierten Benutzer für Git:
    sudo adduser --disabled-password --gecos "" git
  4. Erstelle ein Bare-Repository, das dem Benutzergitgehört:
    sudo mkdir -p /srv/git/myrepo.git
    sudo chown -R git:git /srv/git
    cd /srv/git/myrepo.git
    git init --bare
  5. Von außen kannst du nun auf das Repository zugreifen:Angenommen, der Hostname, die IP oder die Domain deines Raspberry Pi lautet server:
    git clone ssh://git@server:/srv/git/myrepo.git

Sicherheit erhöhen

  1. SSH-Schlüssel generieren (falls noch nicht geschehen):
    ssh-keygen -t ed25519 -C "Ihr Kommentar" -N "" -f ~/.ssh/id_ed25519
  2. Den öffentlichen Schlüssel auf dem Server registrieren:
    ssh-copy-id git@server

Alternativ:

cat ~/.ssh/id_ed25519.pub | ssh git@server "cat >> ~/.ssh/authorized_keys"
  1. Login-Sitzungen und Passwort für den Benutzergitdeaktivieren:
    sudo passwd -l git
  2. git-shellals eingeschränkte Shell für den Benutzergitverwenden:
    sudo usermod -s /usr/bin/git-shell git

Automatisierte Backups mit etckeeper (optional)

Mit etckeeper kannst du Änderungen im /etc-Verzeichnis unter Versionskontrolle halten:

  1. Installiere etckeeper:
    sudo apt update && sudo apt install etckeeper -y
  2. Konfiguriere etckeeper für Git:Bearbeite die Datei /etc/etckeeper/etckeeper.conf und stell sicher, dass VCS="git" gesetzt ist.
  3. Initialisiere etckeeper:
    sudo etckeeper init
    sudo etckeeper commit "Initial commit"

Das wars auch schon. Du hast jetzt ein sicheres, selbst gehostetes Git-Repository eingerichtet. Diese Methode ist einfach, effektiv und gibt dir die volle Kontrolle über deine Daten. Dein Raspberry Pi dient nicht nur als praktisches Backup, sondern auch als zentrale Versionskontrolle für deine persönlichen Projekte. Viel Spaẞ. Peace.

Gebastelt

⬅ Vorheriger Beitrag
Warum Digitalisierung nicht automatisch nachhaltig ist

Nächster Beitrag ➡
EU OS - die zukünftige Linux-Distribution der Europäischen Union?