Skip to content
Moritz010902 edited this page Jun 30, 2025 · 1 revision

Um die Entwickler bei der Einhaltung der Contributing Guidelines direkt bei der Entwicklung zu unterstützen, wurden mehrere Git-Hooks in Kombination mit Branch-Rulesets eingesetzt:

  • post-checkout: Beim Anlegen eines Branches mit einer fehlerhaften Bezeichnung, zeigt dieser Git-Hook in der Entwicklungsumgebung eine Fehlermeldung an. Jedoch kann dadurch nicht direkt das Anlegen des Branches verhindert werden, weshalb zusätzlich für jedes Repository ein Branch-Ruleset angelegt wurde, welches das Hochladen jedes Branches mit einer falschen Bezeichnung verhindert.
  • commit-msg: Dieser Git-Hook prüft die Commit-Nachricht bei jedem Commit auf die Einhaltung der Conventional Commits Spezifikation und verhindert den Commit bei Verstößen
  • pre-commit: Durch diesen Git-Hook wird sichergestellt, dass der Quellcode einer einheitlichen Formatierung unterliegt.

Git-Hooks müssen zunächst vom Entwickler in dessen Entwicklungsumgebung aktiviert werden. Sie werden zentral im Repository woped-git-hooks verwaltet und über Submodules in den einzelnen WoPeD-Repositories eingebunden. Bei der technischen Umsetzung musste zwischen WoPeD-Repositories, die Java, Python und TypeScript im Einsatz haben, unterschieden werden. Demnach wurden für jede Projektart verschiedene Tools eingesetzt:

Python Java Angular (TypeScript)
Verwaltung der Git-Hooks pre-commit pre-commit husky
post-checkout eigenes Skript eigenes Skript eigenes Skript
commit-msg gitlint gitlint commitlint
pre-commit ruff google-java-format prettier

Clone this wiki locally