97 lines
1.9 KiB
Markdown
97 lines
1.9 KiB
Markdown
# Git & Gitea Setup
|
|
|
|
## Git installieren
|
|
|
|
**Linux (Arch):**
|
|
```bash
|
|
sudo pacman -S git
|
|
```
|
|
|
|
**Linux (Ubuntu/Debian):**
|
|
```bash
|
|
sudo apt install git
|
|
```
|
|
|
|
**macOS:**
|
|
```bash
|
|
brew install git
|
|
```
|
|
|
|
**Windows:**
|
|
|
|
Installer von https://git-scm.com herunterladen und ausführen.
|
|
|
|
## Git konfigurieren
|
|
|
|
```bash
|
|
git config --global user.name "Vorname Nachname"
|
|
git config --global user.email "deine@email.de"
|
|
```
|
|
|
|
## Repository von Gitea klonen
|
|
|
|
```bash
|
|
git clone https://gitea.jeanlucmakiola.de/THB/<repo-name>.git
|
|
cd <repo-name>
|
|
```
|
|
|
|
Beim ersten Mal wirst du nach deinen Gitea-Zugangsdaten gefragt.
|
|
|
|
## Grundlegende Git-Befehle
|
|
|
|
### Status prüfen
|
|
|
|
```bash
|
|
git status
|
|
```
|
|
|
|
### Änderungen stagen und committen
|
|
|
|
```bash
|
|
git add datei.java # Einzelne Datei stagen
|
|
git add . # Alles stagen
|
|
git commit -m "Beschreibung" # Commit erstellen
|
|
```
|
|
|
|
### Änderungen pushen/pullen
|
|
|
|
```bash
|
|
git push # Lokale Commits hochladen
|
|
git pull # Änderungen vom Server holen
|
|
```
|
|
|
|
### Branches
|
|
|
|
```bash
|
|
git branch # Alle Branches anzeigen
|
|
git checkout -b feature-xyz # Neuen Branch erstellen und wechseln
|
|
git checkout main # Zu main wechseln
|
|
git merge feature-xyz # Branch in aktuellen mergen
|
|
```
|
|
|
|
## Typischer Workflow
|
|
|
|
1. `git pull` - Neueste Änderungen holen
|
|
2. Dateien bearbeiten
|
|
3. `git add <dateien>` - Änderungen stagen
|
|
4. `git commit -m "Was wurde gemacht"` - Commit erstellen
|
|
5. `git push` - Hochladen
|
|
|
|
## Häufige Probleme
|
|
|
|
### Merge-Konflikte
|
|
|
|
Wenn beim `git pull` Konflikte auftreten:
|
|
|
|
1. Betroffene Dateien öffnen (Konfliktstellen sind mit `<<<<<<<`, `=======`, `>>>>>>>` markiert)
|
|
2. Konflikte manuell auflösen
|
|
3. `git add <datei>` und `git commit`
|
|
|
|
### Falsche Zugangsdaten gespeichert
|
|
|
|
```bash
|
|
git config --global --unset credential.helper
|
|
```
|
|
|
|
Beim nächsten Push/Pull wirst du erneut gefragt.
|