Problem
Two large binary files are currently committed directly to the repository:
catalog.db — 3.4MB SQLite database
demo.gif — 8.1MB animated GIF
Binary blobs in git history are permanent and grow clone size for everyone. They also produce noise in diffs.
Proposed Change
Short term — add to .gitignore (catalog.db)
catalog.db is a runtime artifact that gets bootstrapped on the user's machine. It shouldn't be in source control. Add to .gitignore:
Ship catalog.db as a GitHub Release asset instead, downloaded by the install script.
Medium term — Git LFS for demo.gif
Once LFS is configured, track large media:
git lfs install
git lfs track "*.gif"
git add .gitattributes
Then re-add demo.gif through LFS.
CI
Update .goreleaser.yaml to attach catalog.db as a release artifact automatically.
Files
.gitignore, .gitattributes (new), .goreleaser.yaml
Problem
Two large binary files are currently committed directly to the repository:
catalog.db— 3.4MB SQLite databasedemo.gif— 8.1MB animated GIFBinary blobs in git history are permanent and grow clone size for everyone. They also produce noise in diffs.
Proposed Change
Short term — add to
.gitignore(catalog.db)catalog.dbis a runtime artifact that gets bootstrapped on the user's machine. It shouldn't be in source control. Add to.gitignore:Ship
catalog.dbas a GitHub Release asset instead, downloaded by the install script.Medium term — Git LFS for demo.gif
Once LFS is configured, track large media:
git lfs install git lfs track "*.gif" git add .gitattributesThen re-add
demo.gifthrough LFS.CI
Update
.goreleaser.yamlto attachcatalog.dbas a release artifact automatically.Files
.gitignore,.gitattributes(new),.goreleaser.yaml