docs

Fehlerbehebung

Die paar Dinge, die schiefgehen, was PullMarks Meldungen bedeuten, und das Design hinter den leiseren Fehlschlägen — die meisten „Fehler" hier sind die App, die sich absichtlich weigert, deine Arbeit zu verlieren.

GitHub-Zugriff: wie PullMark sich verbindet — und wie du es reparierst

PullMark leiht sich die GitHub-Zugangsdaten, die deine eigenen Tools längst haben — es hat kein eigenes Login und legt nie ein Geheimnis ab. Einstellungen → Allgemein → GitHub zeigt, ob es verbunden ist, als wer und über welche Quelle; Einrichten… führt eine frische Maschine durchs Verbinden, und Erneut prüfen greift eine Reparatur sofort auf — nach gh auth login ohne Neustart.

Liest du das auf dem Mac, auf dem PullMark (ab 0.36) installiert ist? Die Verbindungs-Zeile jetzt öffnen.

Die Quellen für Zugangsdaten, in der Reihenfolge, in der PullMark sie probiert:

  1. Das Token der GitHub CLI: gh auth token muss eines ausgeben. Wenn nicht, brew install gh && gh auth login — der empfohlene Weg: Sein Token hat erwiesenermaßen passende Scopes, erledigt SSO im Browser-Flow und erneuert sich selbst.
  2. Sonst git credential fill — was auch immer git selbst für github.com benutzt (macOS-Schlüsselbund, Git Credential Manager, ein Token von einem alten HTTPS-Push).

Das Kleingedruckte, für Tokens, die halb funktionieren: Klassische Tokens brauchen den repo-Scope (und read:org für die Team-Namen einer Org); fine-grained Tokens hängen an genau einem Resource Owner — öffentliche Repos und die privaten Repos dieses Owners gehen, alles andere wird abgelehnt; SSO-geschützte Orgs brauchen ein Token, das für jede Org autorisiert ist; und von Hand angelegte Tokens laufen ab — die Zeile in den Einstellungen ist der Ort, an dem sich „ging gestern noch" diagnostizieren lässt.

GitHub: „gibt es an diesem Ref nicht … oder ein privates Repository“

„… konnte nicht geöffnet werden: … Vielleicht gibt es das an diesem Ref nicht, oder es ist ein privates Repository, an das deine GitHub-Zugangsdaten nicht herankommen.“ GitHubs API meldet privat-ohne-Zugriff und gibt-es-nicht identisch, PullMark kann dir also nicht sagen, was von beidem es ist. Sollte das Repo eigentlich gehen, liegt es fast immer an der Authentifizierung — siehe GitHub-Zugriff weiter oben, oder öffne Einstellungen → Allgemein → GitHub und drück Einrichten….

Gatekeeper lässt die App nicht starten

Releases sind mit einer Developer ID signiert und von Apple notarisiert, ein normaler Download zeigt also keine Warnung. Hast du aus dem Quelltext gebaut (make app), ist die App ad-hoc signiert: Rechtsklick → ÖffnenÖffnen, oder gib sie unter Systemeinstellungen → Datenschutz & Sicherheit frei.

Quick-Look-Vorschauen rendern nicht mehr

Ein Homebrew-Upgrade ersetzt das App-Bundle, und dabei kann die Registrierung der Quick-Look-Erweiterung stillschweigend verloren gehen. PullMark meldet sie bei jedem Start neu an — starte die App also einfach einmal. Zeigen die Vorschauen danach immer noch rohen Text, prüf, ob Einstellungen → Allgemein → „Quick-Look-Vorschauen“ auf „Gerendert“ steht.

„PullMark ist nicht mehr deine Standard-App für Markdown“

Dieselbe Ursache: Ein Upgrade hat das Bundle ersetzt und macOS hat die .md-Zuordnung verworfen. Das Wieder zum Standard machen im Banner holt sie zurück; Einstellungen → Allgemein genauso.

„… hat sich geändert, während du diesen Block bearbeitet hast — nichts wurde gesichert“

Die Datei hat sich auf der Platte geändert (ein anderer Editor, ein Agent, eine Git-Operation), zwischen dem Öffnen des Block-Editors und dem Speichern. PullMark weigert sich, in Zeilen hineinzuschreiben, die verrutscht sind — verloren ist nichts außer der einen Änderung, und wenn du den Block wieder öffnest, steht der aktuelle Text da. Dieselbe Absicherung schützt Commits: Ein Vergleich gegen einen Ref, an dem es die Datei gar nicht gibt, wird schlicht gemeldet, statt ein leeres Diff zu zeigen.

Gedimmte Zeilen: Ordner und zuletzt benutzte Einträge, die „nicht da" sind

Ein Ort mit Fragezeichen-Badge oder ein ausgegrauter Eintrag unter „Zuletzt benutzt“ heißt: Der Pfad löst gerade nicht auf — ein nicht eingebundenes Volume, ein gewechselter Git-Branch, ein gelöschter Worktree. Zeilen dimmen absichtlich, statt zu verschwinden: Sie erwachen von selbst wieder, wenn der Pfad zurückkommt. Klickst du einen toten Eintrag an, gibt es Aus „Zuletzt benutzt“ entfernen oder Behalten.

Pull Requests: Banner und ausstehende Kommentare

  • „Dieser Pull Request wurde auf GitHub aktualisiert.“ — der Branch hat sich bewegt, seit du ihn geladen hast. Aktualisieren ist ein Klick und deine Kommentar-Entwürfe überleben; PullMark lädt nie von selbst neu, während ein Review läuft.
  • „Review-Kommentare konnten nicht geladen werden …“ — sonst gäbe sich das Diff als PR ohne Kommentare aus; „Erneut versuchen“ holt sie erneut.
  • „N ausstehende Kommentare konnten nicht zu GitHub hochgeladen werden — lokal für einen neuen Versuch behalten.“ — offline geschriebene Kommentare (oder solche, die einen API-Schluckauf erwischt haben) warten pro PR-Head auf der Platte in der Queue und laden hoch, sobald es geht. Nichts geht verloren.
  • „… committet, aber der Push ist fehlgeschlagen“ — der Commit liegt sicher in deiner lokalen Historie; nur der Push muss noch einmal.

Updates

Das Jetzt updaten im Banner führt das Brew-Upgrade aus (oder, bei DMG-Installationen, eine geprüfte Installation an Ort und Stelle) und startet neu. Schlägt das fehl, zeigt das Banner den exakten Befehl brew upgrade --cask pullmark mit einem Copy-Knopf — im Terminal ausgeführt tut er dasselbe. Entwicklungs-Builds suchen nicht nach Updates.

Der pullmark-Befehl

  • „no such file or folder" — der Befehl prüft jeden Pfad, bevor er irgendetwas öffnet; ein Tippfehler bricht das ganze Öffnen ab (Exit-Code 1), damit Skripte laut scheitern.
  • Command not found — siehe Den Befehl installieren.
  • „Fehler beim Installieren des Befehls" — der Installer in den Einstellungen braucht eine Freigabe, um nach /usr/local/bin zu schreiben; hast du die Abfrage weggeklickt, brich ab und ruf sie neu auf.

Kommst du trotzdem nicht weiter?

Mach ein Issue auf — Hilfe → Fehler melden… füllt eins schon aus der App heraus vor.