Release v1.0.0 #1
Loading…
Reference in a new issue
No description provided.
Delete branch "beta"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Nach "Tag angelegt" war Schluss — kein Changelog, keine Rückfrage, kein Push, kein Release. Ohne jede Fehlermeldung. Ursache ist eine Zeile, die den vorherigen Tag sucht: VORHERIGER_TAG="$(git tag --sort=-v:refname | grep -v "^${TAG}$" | head -n 1)" Beim ersten Release ist der eben angelegte Tag der einzige. grep filtert ihn weg, findet nichts mehr und endet mit 1; pipefail reicht das an die Zuweisung weiter, set -e beendet daraufhin das Skript. Ein leerer vorheriger Tag ist hier aber die richtige Antwort und kein Fehler — der Zweig dafür stand zwei Zeilen weiter unten schon bereit und wurde nie erreicht. Jetzt fängt `|| true` das ab. Der Fehler konnte nur genau einmal auftreten: ab dem zweiten Release gibt es einen vorherigen Tag. Damit ein Abbruch nie wieder unkommentiert bleibt, meldet eine ERR-Falle die Zeilennummer. Bewusst ohne `set -E` — damit erbt jede Kommandosubstitution die Falle, und eine fehlgeschlagene Zuweisung meldet sich zweimal. Der Release-Aufruf ist jetzt ein richtiges if/else statt A && B || C und nennt die URL des angelegten Releases. Geprüft in einem Wegwerf-Klon gegen ein lokales Fern-Repository: release 1.0.0 läuft durch bis "Fertig" — Merge beta -> main, Tag, Push, Rückmerge. scripts/publish.ps1 hat den Fehler nicht; in PowerShell liefert Where-Object ohne Treffer $null statt eines Fehlers. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>