Kurztutorial zur Nutzung des Git Servers https://gitea.fablabchemnitz.de
Der Server steht nur für freigeschaltene Vereinsmitglieder zur Verfügung und kann sowohl für private, als auch für öffentliche Repos verwendet werden.
Vorkonfiguration
apt install git git config --global user.email "user.name@web.site" git config --global user.name "User Name"
Zweifaktorauthentifizierung in Gitea
Checkout von Repositories
Die https Variante ist die einfachste Variante. Sie funktioniert nur, wenn du keine Zweifaktorauthentifizierung (2FA) mit einem Timed One Time Password (TOTP) konfiguriert hast. Allerdings empfehlen wir aus Sicherheitsgründen die Konfiguration von 2FA. Deshalb eignet sich für das intensivere Arbeiten die Konfiguration mit einem SSH Schlüssel besser. Für scriptgesteuerte Anwendungen sind wiederrum application tokens teilweise sinnvoll.
Checkout Variante 1: Regulär via https
git clone https://gitea.fablabchemnitz.de/SomeOtherUser/reallyCoolRepository
Checkout Variante 2: SSH Key
SSH Schlüsselpaar erzeugen (oder vorhandenes Paar verwenden)
Wir verwenden beispielhaft den PuTTY / KiTTY Key Generator und erzeugen einen sicheren Ed22519 Schlüssel.
Selektiere und kopiere den Public Key aus dem obigen Fenster in die Zwischenablage.
Exportiere den Private Key
Öffentlichen Schlüssel (Public Key) hinterlegen
Einen eigenen SSH-Schlüssel kannst du in deinen Account Einstellungen hinzufügen → https://gitea.fablabchemnitz.de/user/settings/keys
GIT_SSH_COMMAND="ssh -i ~/.ssh/MeinPrivateKey" git clone ssh://git@lastycah.fablabchemnitz.de/SomeOtherUser/reallyCoolRepository.git #Sofern du den Private Key in einem Key Agent (z.B. "KeeAgent" PlugIn für KeePass) hinterlegt hast und dieser über einen Socket verfügbar ist, dann kannst du auf den Befehl "GIT_SSH_COMMAND" verzichten. git clone ssh://git@lastycah.fablabchemnitz.de/SomeOtherUser/reallyCoolRepository.git
Checkout Variante Variante 3: Access Token (Application Token)
git clone https://MYPOWERFULSECRETKEY@gitea.fablabchemnitz.de/SomeOtherUser/reallyCoolRepository.git
Commiting und pushing von Dateien (nach dem Bearbeiten)
cd reallyCoolRepository/ #edit some stuff vim README.md git add . git commit -m "Initial commit" git push
Client Software
- Atlassian Sourcetree (Windows, Mac) → https://www.sourcetreeapp.com
- Collabnet Giteye (plattformübergreifend via Java) → https://www.collab.net/downloads/giteye
- GitNex (Android) → https://gitnex.com