Files
km/docs/quellen.md
T
2026-09-04 20:03:07 +02:00

2.1 KiB

Quellen — fremde Git-Repos als Checkout in der Ablage

Festlegung Andreas, 2026-09-04: die info-Doku kommt als zweite Quelle in km — vorerst komplett, ohne Filter nach Klassifikation. „Sobald hive.corp steht, trennen wir die Quellen." Konfiguration KM_SOURCES, Code in gitrepo.py (sources_of) und runner.py.

Bauform

Jede Quelle ist ein eigener Git-Checkout in der Ablage:

<ablage>/<ns>/doku/<name>/     ← z. B. familie/doku/info/ = Clone von ahmann/info
  • SilverBullet sieht die Seiten wie alle anderen; der Index nimmt sie mit (typ: doku, projekt: <name>, classification aus dem Frontmatter).
  • Die Ablage ignoriert */doku/ in ihrer .gitignore: die Wahrheit dieser Seiten liegt im Quell-Repo, nicht ein zweites Mal in ahmann/km.
  • Je Takt: Änderungen aus der Oberfläche werden im Checkout committet („km: Änderungen aus der Oberfläche", Autor KM_GIT_NAME) und in das Quell-Repo gepusht, danach git pull --rebase. Ein Commit aus SilverBullet landet also Minuten später auf master von ahmann/info — ohne PR und ohne Umlaut-Riegel. Das ist gewollt (Auto-Commit und Push).

Konfiguration

KM_SOURCES=info=https://git.home/ahmann/info.git@master

name=url[@branch], mehrere durch Komma. Zugang: dieselben KM_GIT_USER/ KM_GIT_PASSWORD wie für die Ablage; die .netrc bekommt jeden Remote-Host.

Lesen: statische Seite

Hat die Quelle ein mkdocs.yml, baut km sie nach jedem Pull mit Änderung mit python -m mkdocs build nach <data>/site/<name> — die gewohnte MkDocs-Darstellung, read-only, ohne laufenden Dienst. Caddy liefert sie unter /doku/<name>/ aus (deploy/README.md). SilverBullet bleibt für die Ablage selbst; für die Doku ist die gebaute Seite der Leseweg.

Was Andreas wissen sollte

  • Alles ist drin, auch corp- und lan-Seiten — bis die Quellen getrennt werden, ist die Familien-Oberfläche damit nicht nur Familie.
  • Admonitions (!!! warning) aus MkDocs zeigt SilverBullet als Rohtext (Test vom 04.09., spine/core#8).
  • Der Checkout enthält das ganze Repo (ai/, deployment/, …), nicht nur docs/; indexiert werden nur *.md.