Brick Work

0014. GitHub is the canonical repository, starting from a snapshot

Context

Brick Work grew out of a private fork. Until the release cutover its history lived on the maintainer's private Git server: about 930 commits, including internal build reports, design diffs, migration runbooks and personal collection data. An open source release needs a public repository that outside contributors can file issues against and send changes to, without publishing that history.

Options considered

  1. Publish the full history — keeps every commit; publishes everything that was ever committed, which would need a history rewrite to clean.
  2. Private server stays canonical, GitHub as a push mirror — no change to how work lands; outside contributions would have to be carried over by hand.
  3. A fresh GitHub repository, starting from a snapshot of the tree — the published history starts clean; the old history is kept privately.

Recommendation at the time: option 3.

Decision

github.com/Ulef1005/brick-work is the canonical repository. Its app history starts with one snapshot commit of the tree at the cutover, built by scripts/public_snapshot.py, which leaves out internal paths and scans for private material and secrets. Changes land directly on main. The pre-release history is frozen read-only on the private server as a permanent archive and is never published. A read-only pull mirror keeps a private copy for backups.

Consequences

Snapshot commit 4b8e1bc. Related: 0001, 0012.