Beiträge in Deutsch oder Englisch sind willkommen. Die Sprachsynchronisierung erfolgt durch den Maintainer spätestens nach dem Merge.
Dieses Projekt stellt eine kompakte, praxiserprobte Grundlage für einheitlichen Delphi‑Code bereit. Im Fokus stehen:
- Ein klarer, moderner Delphi Style Guide (Deutsch und Englisch)
- Eine kuratierte .gitignore‑Konfiguration speziell für Delphi
- Eine .gitattributes‑Vorlage zur EOL‑Normalisierung und zum Schutz von Binärdateien
Beides hilft Teams, konsistenten Code zu schreiben und typische Reibungen zu vermeiden.
Gerade in Team‑Repos werden in der Eile häufig Dateien eingecheckt, die nicht in die Versionsverwaltung gehören (IDE‑Artefakte, Build‑Outputs, lokale Einstellungen). Das führt zu:
- unnötigen Diffs und Merge‑Konflikten
- instabilen Builds durch lokale Artefakte
- unerwünschten Seiteneffekten im Team
Die enthaltene, auf Delphi zugeschnittene .gitignore‑Datei verhindert genau das. Der Style Guide sorgt parallel für ein gemeinsames Verständnis von Struktur, Benennung und modernen Sprachfeatures. Zusätzlich verhindert eine .gitattributes‑Datei Scheindiffs durch unterschiedliche Zeilenenden (CRLF vs. LF) und schützt Binärartefakte vor Textfiltern/Diffs. Details finden sich im Abschnitt Inhalte.
Auch außerhalb von Teams profitieren Einzelentwickler langfristig von einem konsistenten Style Guide. Dieser Leitfaden orientiert sich an bewährten, klassischen Strukturen, wie man sie auch im RTL/VCL/FMX‑Code von Delphi findet – ist aber sicherlich meinungsstark formuliert. Entscheidend ist nicht der „perfekte“ Stil, sondern dass man sich auf einen Stil einigt und ihn konsequent im gesamten Codebestand anwendet.
- Kuratierte GitIgnore‑Vorlage: Delphi GitIgnore.txt
- Git Attributes‑Vorlage: Delphi GitAttributes.txt
- Delphi Style Guide (DE): Delphi Style Guide DE.md
- Delphi Style Guide (EN): Delphi Style Guide EN.md
- Universelles Build-Skript: DelphiBuildDPROJ.ps1 - PowerShell-Skript zum Bauen von Delphi-Projekten per Kommandozeile
- Release Tools: release-tools/ - Automatisierte Release-Erstellung
Hinweis: Der Style Guide wird synchron in Deutsch und Englisch gepflegt. Änderungen sollten immer in beiden Dokumenten erfolgen.
- Style Guide lesen und im Team vereinbaren
- Einrückung: 2 Leerzeichen; Zeilenlänge: 120 Zeichen (Formatter/Editor‑Guideline synchron halten)
- Namenskonventionen (A-/L-/F‑Präfixe, Komponenten, Konstanten, Enums mit SCOPEDENUMS)
- Moderne Features: Generics, anonyme Methoden, Inline‑Variablen (10.3+), Multiline‑Strings (12+)
- .gitignore aktivieren
- Datei „Delphi GitIgnore.txt“ ins Repo‑Root kopieren und in „.gitignore“ umbenennen
- Projektspezifische Ergänzungen nach Bedarf vornehmen
- Git Attributes hinzufügen
- „Delphi GitAttributes.txt“ ins Repo‑Root kopieren und in „.gitattributes“ umbenennen.
- Die Datei normalisiert Zeilenenden für Delphi‑Quellen (CRLF) und markiert Binärartefakte (.res, .ico, .dcu, .bpl, .dll, .exe) als binary.
- Werden .dfm/.fmx im Projekt als Text gespeichert (Standard), die Text‑Regeln beibehalten. Bei Binärspeicherung die Binary‑Regeln aus dem Template aktivieren.
- Für bestehende Repos nach dem Hinzufügen ausführen:
git add --renormalize .und die Änderungen committen.
Das Repository enthält ein universelles PowerShell-Skript zum Bauen von Delphi-Projekten per Kommandozeile. Dies ist ideal für CI/CD-Pipelines, automatisierte Builds oder jedes Szenario, in dem Delphi-Projekte ohne IDE gebaut werden müssen.
Features:
- Erkennt automatisch die neueste installierte Delphi-Version aus der Windows-Registry
- Unterstützt alle Delphi-Projektdateien (.dproj)
- Konfigurierbare Build-Konfiguration (Debug/Release) und Plattform (Win32/Win64)
- Farbige Konsolenausgabe für bessere Lesbarkeit
- Verbose-Modus für detaillierte Build-Informationen
- Keine Abhängigkeiten von spezifischen Projekten - funktioniert mit jedem Delphi-Projekt
- Konfigurierbare Defaults-Sektion zur einfachen Anpassung
- Robuste Fehlerbehandlung und saubere Exit-Codes für CI/CD-Integration
Verwendung:
# Einfache Verwendung (erkennt Delphi-Version automatisch, baut Debug/Win32)
.\DelphiBuildDPROJ.ps1 -ProjectFile "MeinProjekt.dproj"
# Release für Win64 bauen
.\DelphiBuildDPROJ.ps1 -ProjectFile "MeinProjekt.dproj" -Config Release -Platform Win64
# Spezifische Delphi-Version mit ausführlicher Ausgabe verwenden
.\DelphiBuildDPROJ.ps1 -ProjectFile "MeinProjekt.dproj" -DelphiVersion "22.0" -VerboseOutputParameter:
-ProjectFile(erforderlich): Pfad zur .dproj-Datei, die gebaut werden soll-Config: Build-Konfiguration (Standard: "Debug")-Platform: Zielplattform (Standard: "Win32")-DelphiVersion: Zu verwendende Delphi-Version (Standard: automatische Erkennung der neuesten Version)-VerboseOutput: Aktiviert ausführliche MSBuild-Ausgabe
Voraussetzungen:
- Embarcadero Delphi installiert
- MSBuild verfügbar (Visual Studio Build Tools oder vollständiges Visual Studio)
Weitere Details finden Sie in der Skript-Dokumentation in DelphiBuildDPROJ.ps1.
Offizielle Releases sind im Verzeichnis release-assets/ verfügbar. Jedes Release enthält:
- PDF-Versionen der Style Guides (Deutsch und Englisch)
- Git-Templates (.gitignore und .gitattributes)
- Dokumentation
Für die Erstellung neuer Releases siehe release-tools/README.md.
- Issues und Pull Requests sind willkommen
- Bitte Änderungen im Style Guide stets in DE und EN spiegeln (die Synchronisierung erfolgt spätestens nach dem Merge durch den Maintainer)
- Konfigurations-Templates für Code-Formatter, um den Style Guide technisch umzusetzen (z. B. 2 Leerzeichen, 120 Zeichen, synchronisierte vertikale Guideline) ...
- Gemeinsame Projekt-Presets (.dproj) oder IDE-Einstellungen fürs Team
MIT License – siehe Hinweise in den Dateien