Skip to content

Commit d0247d2

Browse files
Merge pull request #8 from securebitsorg/feature/github-releases-documentation
Feature/github-releases-documentation
2 parents 00979a3 + 7f6694d commit d0247d2

2 files changed

Lines changed: 130 additions & 0 deletions

File tree

BRANCH_PROTECTION_CONFIG.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# 🛡️ Branch Protection Configuration
2+
3+
## Empfohlene Einstellungen für main-Branch
4+
5+
### Basis-Schutz
6+
-**Require a pull request before merging**
7+
- Required approving reviews: `1`
8+
- Dismiss stale PR approvals when new commits are pushed: ``
9+
- Require review from code owners: `` (für Solo-Entwicklung)
10+
11+
### Status Checks
12+
-**Require status checks to pass before merging**
13+
- Require branches to be up to date before merging: ``
14+
- Required status checks:
15+
- `test (3.9)`
16+
- `test (3.10)`
17+
- `test (3.11)`
18+
- `test (3.12)`
19+
20+
### Erweiterte Einstellungen
21+
-**Require conversation resolution before merging**
22+
-**Require signed commits** (optional)
23+
-**Include administrators** (für Solo-Entwicklung)
24+
-**Allow force pushes**
25+
-**Allow deletions**
26+
27+
## Nach der Aktivierung
28+
29+
### Neuer Workflow:
30+
```bash
31+
# 1. Feature-Branch erstellen
32+
git checkout -b feature/neue-funktion
33+
34+
# 2. Änderungen machen und committen
35+
git add .
36+
git commit -m "feat: neue funktion"
37+
38+
# 3. Branch pushen
39+
git push origin feature/neue-funktion
40+
41+
# 4. Pull Request über GitHub UI erstellen
42+
43+
# 5. CI/CD Tests abwarten (automatisch)
44+
45+
# 6. PR mergen über GitHub UI
46+
47+
# 7. Feature-Branch wird automatisch gelöscht
48+
```
49+
50+
### Vorteile:
51+
- 🛡️ **Schutz vor kaputten Commits** auf main
52+
- 🧪 **Automatische Tests** vor jedem Merge
53+
- 📝 **Dokumentierte Änderungen** durch PR-Beschreibungen
54+
- 🔄 **Einfaches Rollback** bei Problemen
55+
- 👥 **Teamwork-ready** für zukünftige Mitarbeiter
56+
57+
## Testen der Branch Protection
58+
59+
Nach der Aktivierung:
60+
1. Versuche direkt auf main zu pushen → sollte blockiert werden
61+
2. Erstelle einen Test-PR → sollte funktionieren
62+
3. Merge den PR → sollte nach erfolgreichen Tests funktionieren

GITHUB_RELEASES.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# 📦 GitHub Releases Guide
2+
3+
## Übersicht
4+
5+
Dieses Dokument erklärt, wie GitHub Releases für das Bash-Script-Maker Projekt verwaltet werden.
6+
7+
## 🎯 Was sind GitHub Releases?
8+
9+
GitHub Releases sind veröffentlichte Versionen deiner Software, die:
10+
- **Versionsnummern** haben (z.B. v1.8.0)
11+
- **Release Notes** enthalten
12+
- **Assets** (Dateien) bereitstellen können
13+
- **Download-Links** für Benutzer bieten
14+
15+
## 📋 Aktuelle Release-Strategie
16+
17+
### Automatische Releases
18+
-**Trigger**: Jeder Push auf `main` mit Commit-Message-Patterns
19+
-**Versioning**: Automatisches Semantic Versioning
20+
-**Assets**: Python Packages (.whl, .tar.gz)
21+
-**PyPI**: Automatischer Upload zu PyPI
22+
-**GitHub Packages**: Docker Images in GHCR
23+
24+
### Release-Patterns
25+
```bash
26+
feat: neue Funktion → Minor Version (1.8.0 → 1.9.0)
27+
fix: Bugfix → Patch Version (1.8.0 → 1.8.1)
28+
BREAKING CHANGE: → Major Version (1.8.0 → 2.0.0)
29+
```
30+
31+
## 🚀 Workflow mit Pull Requests
32+
33+
### 1. Feature-Branch erstellen
34+
```bash
35+
git checkout -b feature/neue-funktion
36+
# Änderungen machen
37+
git commit -m "feat: neue coole Funktion"
38+
git push origin feature/neue-funktion
39+
```
40+
41+
### 2. Pull Request erstellen
42+
```bash
43+
gh pr create --title "Feature: Neue Funktion" --body "Beschreibung..."
44+
```
45+
46+
### 3. Review & Merge
47+
- CI/CD Tests laufen automatisch
48+
- Code Review (optional für Solo-Entwicklung)
49+
- Merge über GitHub UI
50+
- **Automatisches Release** wird ausgelöst
51+
52+
## 📊 Release-Historie
53+
54+
Aktuell haben wir **30+ Tags** erstellt:
55+
- v0.1.0 bis v1.9.0
56+
- Vollständige Historie auf GitHub verfügbar
57+
- Jede Version mit eigenen Release Notes
58+
59+
## 🛠️ Nächste Schritte
60+
61+
1. **Branch Protection** aktivieren
62+
2. **Pull Request Template** erstellen
63+
3. **Issue Templates** hinzufügen
64+
4. **Automatische Changelog** Generation
65+
66+
---
67+
68+
*Erstellt als Teil des Pull-Request-Workflows*

0 commit comments

Comments
 (0)