announcements 2026-07-19

geschichte — Git, as a queryable database A fresh take on the original geschichte (2013, which grew into replikativ): a real Git implementation — real objects, packs, refs, and the wire protocol, interoperable with native git — but the repository is stored as datoms in Datahike. So the whole repo is one Datalog query surface: ask for every commit, path and ref, run graph algorithms over the commit DAG, and join a repo against another repo or your app's own data — in a single query. Will be used in muschel and the dvergr harness to remove all native dependencies and auto-version and sync file systems.

clojure
;; authors of the merge commits in HEAD's ancestry — reachability × structure, one query
[:find ?author (count ?c)
 :where [(graph/transitive-closure ?g $ ?head) [?c ...]]
        [?c :geschichte.commit/parents ?p1] [?c :geschichte.commit/parents ?p2]
        [(not= ?p1 ?p2)] [?c :geschichte.commit/author ?author]]
Runs on the JVM and in the browser (CLJS), ships a native ges CLI, Apache-2.0. Feedback very welcome → https://github.com/replikativ/geschichte #CB7GJAN0L #C09622F337D

7
👌 1
🚀 4
🎉 29