LawGit Spiegel 23038bf658 BGBl. 2021 I S. 2970 · Erlass · Gesetz zur Umsetzung der Richtlinie (EU) 2019/882 des Europäischen Parlaments und des Rates über die Barrierefreiheitsanforderungen für Produkte und Dienstleistungen und zur Änderung anderer Gesetze
Fundstelle: BGBl. 2021 I S. 2970
Inkrafttreten: 2021-07-23 (Artikel 1 § 3 Absatz 2 und 3 Satz 2 und 3, § 13 Absatz 3 und § 17 Absatz 6 sowie die Artikel 2, 2a, 2b Nummer 2 und Artikel 2e); 2022-01-01 (Artikel 2b Nummer 1 Buchstabe a und Nummer 3 bis 6, Artikel 2c Nummer 3 bis 5 und Artikel 2d); 2022-04-01 (Artikel 2b Nummer 1 Buchstabe b und c und Nummer 7 und 8, Artikel 2c Nummer 1 und 2, Artikel 2f und 2g); 2025-06-28 (ganzes Gesetz, vorbehaltlich der Sätze 2 bis 4)
Quelle: offenegesetze
Parser: llm

Eine Verkündung = ein Commit. Stammnorm-Ordner nur, wenn zugeordnet.
Historischer Paragraphentext fehlt oft; siehe FASSUNG.md / STELLEN.md.
Verkündung: 2021-07-22

BGBl-Id: bgbl1-2021-46-6
2021-07-22 12:00:00 +00:00

Git-Spiegel der Fassungen (laws_git/)

Nachvollziehbare Geschichte der Bundesgesetze als eigenes Git-Repository. Das Eltern-Repo lawgit bleibt die Arbeitskopie (Parser, UI, Markdown von gesetze-im-internet.de). laws_git/ ist ein verschachteltes Git-Repo und liegt absichtlich nicht auf main (außer dieser Anleitung).

Eine Verkündung = ein Commit. Datum des Commits ist das Verkündungsdatum.

Was man hier sieht

Aktion Bedeutung
git log --oneline -- verkuendungen/ alle Blätter chronologisch
git show HEAD:verkuendungen/2024/bgbl1-2024-167-1.md Metadaten einer Verkündung
git log --oneline -- bgb/ nur Stationen, die dem BGB zugeordnet sind, plus heutiger GII-Text
git show HEAD:bgb/§1.md heutiger Wortlaut von § 1

Ehrlich: Den vollen historischen Paragraphentext haben wir meist nicht. Ältere Commits tragen Metadaten (FASSUNG.md, STELLEN.md) statt eines erfundenen Altwortlauts. Der letzte Commit eines Gesetzesordners ist die konsolidierte Fassung von gesetze-im-internet.de.

2023+ stammt aus der Heuristik (recht.bund.de): Fundstelle und Titel sind belastbar, Stammnorm-Ordner nur wenn der Kurztitel eine bekannte Norm nennt. 19492022: LLM-Parse, lückenhaft solange --holen nicht den vollen Bestand hat.

Git-Datum vor 1970: Apple Git akzeptiert keine Author-Daten vor 1970. Diese Commits liegen intern auf dem 1.1.1970 (Reihenfolge bleibt). Die echte Verkündung steht in der Commit-Message und in verkuendungen/.

Git = Fassungsgeschichte. Die Postgres-Datenbank bleibt für Abfragen.

Bauen und nachziehen

Im Eltern-Repo:

# Alles neu schreiben (Demo-Kette verwerfen)
python3 build_laws_git.py --rebuild

# Nur nachziehen (idempotent über Trailer `BGBl-Id:`)
python3 build_laws_git.py

# Ein Gesetz / Test
python3 build_laws_git.py --law bgb --rebuild
python3 build_laws_git.py --dry-run --limit 20

Quellen: timeline/parsed/ (lawgit, GPU-Historie) und ../gesetzblatt/timeline/parsed/ (recht.bund.de ab 2023).

Kein Force-Push.

git -C laws_git log --oneline -- verkuendungen/
git -C laws_git log --oneline -- bgb/
git -C laws_git blame bgb/§1.md

Optional zweites Remote (nicht main von lawgit):

git -C laws_git remote add origin git@git.coded.law:michaelkole/laws-git.git
git -C laws_git push -u origin main
Description
Git-Spiegel der Bundesgesetze: eine Verkündung = ein Commit.
Readme 319 MiB
Languages
Markdown 100%