1) Repos finden & ZIP-Download
Öffne git.numexp.org, wähle ein Repository und klicke oben rechts auf Download → ZIP. Entpacken, fertig.
2) Git über HTTPS: Clone & Pull
- Repo-URL (HTTPS) aus Forgejo kopieren, z. B.:
https://git.numexp.org/<user>/<repo>.git
- Im Terminal:
git clone https://git.numexp.org/<user>/<repo>.git cd <repo> # Änderungen vom Server holen git pull # (optional) Tags & Releases git fetch --tags # (optional) Submodule initialisieren git submodule update --init --recursive
Tipp (macOS): Zugangsdaten merken lassen: git config --global credential.helper osxkeychain
3) Neues Repo anlegen & per HTTPS pushen
- In Forgejo: New Repository anlegen (privat/öffentlich nach Wunsch).
- Personal Access Token erstellen:
Profil → Settings → Applications → Generate Token (Scope:repository
). Token kopieren. - Im lokalen Projektordner:
# falls noch kein Git-Repo: git init git add -A git commit -m "Initial" # Standardbranch git branch -M main # Remote setzen (Forgejo-URL einsetzen) git remote add origin https://git.numexp.org/<user>/<repo>.git # Erster Push (Benutzername: dein Forgejo-User, Passwort: der Token) git push -u origin main
4) Änderungen pushen (Updates)
git add -A git commit -m "Update" git push origin main
Falls rejected (fetch first)
kommt:
git pull --rebase origin main git push origin main
5) Diskutieren: Issues als Forum
Diskussionen laufen über Issues:
- Zentral: Forum-Repo – Themen auflisten oder neu anlegen: Alle Themen Neues Thema
- Projektbezogen: Im jeweiligen Projekt-Repo auf Issues klicken → New issue.
Tipps für gute Issues:
- Kurzer Titel & Kontextlink (z. B. auf die Projektseite).
- Schritte zum Reproduzieren, erwartetes vs. tatsächliches Verhalten.
- Codeblöcke mit
```language
…```
, Anhänge/Plots willkommen. - Labels setzen (z. B. Fragen, Bug, Deep-Ritz).
Auf unseren Projektseiten gibt es Buttons „Diskutieren“, die ein vorbefülltes Issue öffnen.
6) Troubleshooting (kurz)
- 401/403 bei HTTPS-Push: Personal Access Token erzeugen und als Passwort nutzen.
- Host key changed (SSH): Einträge für den Host in
~/.ssh/known_hosts
entfernen. - rejected (fetch first):
git pull --rebase origin main
und erneut pushen. - Submodule fehlen:
git submodule update --init --recursive
.